• ttsx2


    2 day

    项目基本设置

    include的作用

    每当Django遇到 include() 时,它将截断匹配的URL,并把剩余的字符串发往包含的URLconf作进一步处理。

    继续看这个例子,这里就是被包含的URLconf mysite.blog.urls

    from django.conf.urls.defaults import *
    
    urlpatterns = patterns('',
        (r'^(dddd)/$', 'mysite.blog.views.year_detail'),
    
    urlpatterns = patterns('',
        (r'^weblog/', include('mysite.blog.urls')),
    

    /weblog/2007/ :在第一个URLconf中,模式 r'^weblog/' 被匹配。 因为它是一个 include() ,Django将截掉所有匹配的文本,在这里是 'weblog/' 。URL剩余的部分是 2007/ , 将在 mysite.blog.urls 这个URLconf的第一行中被匹配到。 URL仍存在的部分为 2007/ ,与第一行的 mysite.blog.urlsURL设置相匹配。

    namespace的作用

    然后在view和templates中使用app_name:name,此时就算有多个app中都有名为 index 的 name 也不会有问题了

    https://www.jianshu.com/p/3dfd05c6e9d3

    这个是我想要的:https://blog.csdn.net/weixin_30751947/article/details/101636962

    stark

    https://www.cnblogs.com/smallmars/p/8657094.html

    1项目基本设置

    1)应用设置

    我们根据项目模块,创建了四个应用并全部置于apps包下:cart购物车、goods商品、order订单、user用户。

    它们均需在settings里进行注册:

    INSTALLED_APPS = (
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        # 下面是一些自定义添加的第三方应用和项目应用
        'tinymce',  # django-tinymce 富文本编辑器
        'haystack',  # 全文检索的框架
        # 'djcelery', # 将耗时的程序放到celery中执行
        # 'celery_tasks',
    
        # 项目应用
        'apps.cart',  # 购物车  cart
        'apps.goods',  # 商品
        'apps.order',  # 订单
        'apps.user',  # 用户
    )
    
    2) 模板路径配置(有必要吗?为什么没设置过)
    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',
                ],
            },
        },
    ]
    
    3)静态文件配置
    # 配置静态文件目录
    STATIC_URL = '/static/'
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, 'static')
    ]
    
    4)URLconf根文件配置
    ROOT_URLCONF = 'dailyfresh.urls'
    
    5)后台管理本地化语言配置
    LANGUAGE_CODE = 'zh-Hans'
    
    TIME_ZONE = 'Asia/Shanghai'
    

    其他settings文件配置会在开发模块功能中遇到时再添加配置。

    6)dailyfresh.urls配置
    urlpatterns = [
        url(r'^admin/', include(admin.site.urls)),
        url(r'^search', include('haystack.urls')), # 全文检索框架
        url(r'^tinymce/', include('tinymce.urls')),  # 富文本编辑器url
        
        url(r'^user/', include('apps.user.urls', namespace='user')), # 用户模块 user.urls
        url(r'^cart/', include('apps.cart.urls', namespace='cart')), # 购物车模块
        url(r'^order/', include('apps.order.urls', namespace='order')), # 订单模块
        url(r'^', include('apps.goods.urls', namespace='goods')), # 商品模块
    ]
    

    可以看到,我们将网页首页默认放在了goods模块路径下,其他模块URL路径均与其模块名相同。这样分解URL配置,有利于各模块的URL管理。但需注意,URL层级不能过长,一般最多控制在3级左右。

  • 相关阅读:
    链表中倒数第K个结点
    关于栈的经典问题---判断一个栈的出栈序列是不是有效的
    剑指Offer-用两个栈实现队列
    Netty与NIO
    牛客-反转数字
    N叉树的最大深度-DFS
    version can neither be null, empty nor blank
    剑指 Offer 16. 数值的整数次方
    Vue基础语法与指令
    ES6常用语法
  • 原文地址:https://www.cnblogs.com/Doner/p/11893084.html
Copyright © 2020-2023  润新知