• (一)Django项目架构介绍


    项目的架构为:

    1、虚拟环境virtualenv

    • 安装Django==2.1.3
    • 安装pymysql
    • 安装mysqlclient
    • 安装其他等

    2、项目结构为:

    应用APP:

    • blog -- 管理博客
    • account -- 管理用户注册/登录/等
      后台数据库:
    • mysql
      路由分层及命名空间:
    • 根据应用进行分层
    from django.urls import path,include 
    # 使用include方法
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('blog/',include("blog.urls")),
        path('account/',include("account.urls")),
    ]
    
    • 应用新增urls.py中,需写命名空间:app_name=xxxx

    3、项目配置:

    • APP应用配置
    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'blog', #配置创建好的blog,APP应用名
        'account', #配置创建好的account,APP应用名
    ]
    
    • MySQL配置
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'OPTIONS': {
                'read_default_file': os.path.join(BASE_DIR,"db.cnf"),
            },
        }
    }
    ### db.cnf
    [client]
    host = 127.0.0.1
    port = 3306
    database = 't_test_blog'
    user = 'root'
    password = '123456'
    default-character-set = utf8mb4
    
    • 静态资源配置
    步骤1:根目录下新建templates目录
    步骤2:setting新增如下代码:
    STATIC_URL = '/static/'
    STATICFILES_DIRS = (
        os.path.join(BASE_DIR,"static"),  #一定要加一个逗号,
    )
    步骤3:修改TEMPLATES模板配置
    TEMPLATES = [
        {
            'BACKEND': 'django.template.backends.django.DjangoTemplates',
            'DIRS': [os.path.join(BASE_DIR,"templates"),], #改成templates
            'APP_DIRS': False, #改成False
            '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',
                ],
            },
        },
    ]
    
    • 邮件发送配置
    EMAIL_HOST = 'smtp.163.com'
    EMAIL_HOST_USER = "yang_song_lin@163.com"
    EMAIL_HOST_PASSWORD = "YANGSongLin1993"
    EMAIL_PORT = 25
    EMAIL_USE_TLS = True
    DEFAULT_FROM_EMAIL = "yang_song_lin@163.com"
    
    • 其他配置
    中文及时区
    LANGUAGE_CODE = 'zh-hans'
    
    TIME_ZONE = 'Asia/Shanghai'
    
    后台调试用
    EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
    
    部署用
    DEBUG = True
    
    ALLOWED_HOSTS = [] #表示不同访问地址
    

    4、项目目录结构

    项目工程名
    ├─account  account应用  处理用户相关
    │  ├─migrations
    │  └─admin.py
    │  └─ apps.py
    │  └─ forms.py
    │  └─ models.py
    │  └─tests.py
    │  └─urls.py
    │ └─urls.py
    │  └─views.py
    ├─blog    blog应用    处理博客显示
    │  ├─migrations
    │  └─admin.py
    │  └─apps.py
    │  └─models.py
    │  └─tests.py
    │  └─urls.py
    │  └─views.py
    ├─mysite  项目容器    
    │  └─settings.py 基础配置项
    │  └─urls.py     基础路由
    │  └─wsgi.py     部署相关
    ├─static         静态文件夹
    │  ├─css         CSS资源文件夹
    │  ├─image       图片资源文件夹
    │  ├─fonts       字体资源文件夹
    │  └─js          js资源文件夹
    └─templates      总模板
    │   ├─account    account应用模板
    │   ├─admin      admin应用模板
    │   ├─blogs      blogs应用模板
    │   ├─registration 
    │   ├─base.html    基础模板,用于继承重写
    │   ├─header.html  头部模板,用于重写
    │   └─footer.html  页脚模板,用于重写
    │
    ├─manage.py       运行文件
    └─db.cnf          数据库配置文件
    
  • 相关阅读:
    ASP扫盲学习班第六课 添加新保存的数据
    三级联动菜单免刷新加载
    ASP按定制格式导出word文件的完美解决思路
    通用客户资源管理系统(客户资料保护库)
    SmR 通用信息采集系统(新闻小偷)
    ASP扫盲学习班第三课 程序界面的设计
    我的新作品(单身贵族网全站)
    《将博客搬至CSDN》
    我的新作品
    asp函数大全
  • 原文地址:https://www.cnblogs.com/yangsun/p/11914982.html
Copyright © 2020-2023  润新知