zoukankan      html  css  js  c++  java
  • model中的一些处理

    1、setting.py中设置

    主要有三个地方需要设置:

    MEDIA_URL = ‘/media/’,设置该路径为了在模板中定位图片的位置,<img src="{{ MEDIA_URL }}{{ user.image }}"/> 这样便可以从浏览器中得到头像的url地址,从而显示出来

    MEDIA_ROOT = os.path.join(BASE_DIR, ‘media’) , 设置该路径是为了将新建的‘media’添加到根搜索路径下,这样在建立用户模型时的image = models.ImageField(max_length=100, upload_to='users/image/%Y/%m', , upload_to 指定的是相对闻之,通过设定MEDIA_ROOT,便可以将头像存储在:127.0.0.1:8000/meida/user/image/%Y/%m,目录下了。

    的上下文管理器,添加media进来,如果不添加的话,模板中的{{ MEDIA_URL }}会找不到地址的。

    设置TEMPLATES中

    TEMPLATES = [
        {
            'BACKEND': 'django.template.backends.django.DjangoTemplates',
            'DIRS': [os.path.join(BASE_DIR,  'templates'),],
            'APP_DIRS': True,
            'OPTIONS': {
                'context_processors': [
                    'django.template.context_processors.debug',
                    'django.template.context_processors.request',
                    'django.contrib.auth.context_processors.auth',
                    'django.contrib.messages.context_processors.messages',
                    'django.template.context_processors.media',
                ],
            },
        },
    ]
    

      

    2、配置url

    因为浏览器中显示图片,会从如下地址中寻找:127.0.0.1:8000/meida/user/image/%Y/%m , 如果不配置media的url地址的话,该图片是无法被找到的。配置方法如下:

    from django.conf.urls import url
    from django.views.static import serve
    
    from mxonline3.settings import MEDIA_ROOT
    
    urlpatterns = [
    
        #配置上传文件的访问处理函数
        url(r'^media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}),
    
    ]

     djangoueditor配置

    1、将djangoueditor添加到setting.py中

    INSTALLED_APPS = [
        ...
        'DjangoUeditor',
    ]

    2、添加url

    将URL添加到urlpatterns中去:

     #富文本编辑器
        url(r'^ueditor/',include('DjangoUeditor.urls' )),

    3、修改model

    将模型中需要改为富文本添加的字段,一般为TextField,改为如下:

    detail = UEditorField(verbose_name='课程详情',width=600, height=300, toolbars="full", imagePath="course/ueditor/", filePath="course/ueditor/", upload_settings={"imageMaxSize":1204000},default='')

    settings中关于static静态文件目录的设置

    django项目settings中关于静态资源存放位置的设置
    主要涉及以下3项:STATIC_URL、STATICFILES_DIR和STATIC_ROOT

    1、STATIC_URL

    这项是必须配置的,而且属性值不能为空。默认值是STATIC_URL = '/static/'。

    如果STATICFILES_DIR没有设置,则只能识别app中static文件夹下的静态资源。即:只能通过https://127.0.0.1:8000/static/1.jpg访问,且static文件夹是放在app中的。 app中静态文件夹名称必须是static,即STATIC_URL属性的值。如果写其他名称,则不能访问。 STATIC_URL的值,表示访问静态资源的起始url,如:https://127.0.0.1:8000/static/...... 如果直接把static文件夹放在项目根目录下,通过上面的网址是不能访问的,除非设置STATICFILES_DIR。

    2、STATICFILES_DIR

    如果想在项目的根目录下存放静态资源,则需要设置STATICFILES_DIRS属性。该属性的值是列表或元组格式,每个列表(元组)元素代表一个静态资源文件夹,这些文件夹可以自行命名,不必非得是static。

    如:在项目根目录下建立文件夹public_static,里面放置图片1.jpg,在app(index)中建立文件夹index_static,里面放置2.jpg,都用于存放静态文件。 则配置:STATICFILES_DIRS = [os.path.join(BASE_DIR, 'public_static'),os.path.join(BASE_DIR, 'index/index_static'),] 访问静态文件的路径是:https://127.0.0.1:8000/static/1.jpg;https://127.0.0.1:8000/static/2.jpg.

    综上可见,访问静态资源的路径(起始路径)由STATIC_URL的属性值决定,如果静态文件夹中还有别的文件夹(如test),访问时的路径则是https://127.0.0.1:8000/static/test/1.jpg

    3、STATIC_ROOT

    它的作用主要是收集整个项目的静态资源,并存放在一个新的文件夹,然后由该文件夹与服务器之间构建映射关系。

    STATIC_ROOT配置如下:STATIC_ROOT = os.path.join(BASE_DIR, 'all_static')

  • 相关阅读:
    奇数阶魔方问题
    《DSP using MATLAB》示例9.3
    《DSP using MATLAB》示例9.2
    《DSP using MATLAB》示例9.1
    找个目标很重要
    《DSP using MATLAB》示例Example 8.30
    《DSP using MATLAB》示例Example 8.29
    《DSP using MATLAB》示例Example 8.28
    《DSP using MATLAB》示例Example 8.27
    《DSP using MATLAB》示例Example 8.26
  • 原文地址:https://www.cnblogs.com/shangjunnihao/p/10675549.html
Copyright © 2011-2022 走看看