• linux项目创建


    1 初始化项目结构

    └─shiyanlou_project                                     # 项目根路径 
         │ .gitignore                                         # 提交git仓库时,不提交的文件必须要在这里进行标注 
         │ README.en.md                                        # 英文(项目介绍) 
         │ README.md                                         # 中文项目简介 
         │ requirements.txt                                 # django项目安装文件 
         │
         ├─celery_task                                         # 用来存放celery相关文件(以便分布式部署) __init__.py 
         │
         ├─db                                                 # 数据库相关:1.数据库初始化sql脚本; 2.数据库维护脚本,清 理,备份脚本 
         ├─scrips                                             # 脚本目录:1.定时任务脚本;2.页面静态化脚本;处理项目脚本 
         ├─logs                                             # 存放日志 
         ├─packages                                         # 外部包,原始的,未配置的:1.七牛云sdk;2.阿里云短信; 
         └─uwsgi_conf                                         # uwsgi配置,日志,pid 
         │
         │
         └─syl                                                 # 真正的django项目(代码)django-admin startproject 项目名 
            │ apps (python包)                              # Django各种app模块 
            │ libs (python包)                              # 七牛云sdk+配置(外部下载) 
            │ utils (python包)                              # 小工具,常用函数(自己写的) 
            │ static 
            │ templates 
            │ syl(项目配置) 
            │ manager.py

    2 linux 项目创建

    2.1 创建文件夹

    2.2 打开项目

    2.3 删除 main.py

    2.4 新建Readme.md

    注意:(包可以导入,文件夹不能导入)

    2.5 新建文件夹

    db,logs,scrips,packages,uwsgi_conf文件夹

    2.6 新建celery_task 包

    2.7 创建项目

     

     

    2.8 创建三个包

    apps,libs,utils

    2.9 添加配置问题

    2.9.1 配置添加

    2.9.2 点击创建配置

    2.10 配置解析器

    2.11 语言和框架

    2.12 运行成功

    3 数据库

    3.1 数据库配置

    3.1.1 创建用户模型user
    python ../manage.py startapp user # 创建user模型
    3.1.2 在settings.py中注册模型
    INSTALLED_APPS = [ 
        'user.apps.UserConfig', 
    ]
    # 注:pycharm无法联想,需要把apps文件夹设置为源根
    3.1.3 syl/urls.py添加主路由
    urlpatterns = [ 
        path('user/', include('user.urls')), 
    ]
    3.1.4 syl/settings.py中添加apps路径
    # 把apps目录插入,到系统包搜索路径第一个位置中 
    sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
    3.1.5 创建 user/urls.py子路由文件
    from django.urls import path 
    urlpatterns = [ 
    
    ]

    3.2 数据库迁移

    3.2.1 user/models.py创建模型:从写django user表
    from django.db import models 
    from django.contrib.auth.models 
    import AbstractUser 
    
    # Create your models here. 
    class User(AbstractUser): 
        phone = models.CharField('手机号',max_length=20) 
        img = models.ImageField(upload_to='user',null=True) 
        nick_name = models.CharField('昵称',max_length=20) 
        address = models.CharField('地址',max_length=255) 
        
        class Meta: 
            db_table = 'tb_user'
    3.2.2 syl/settings.py中注册自己的用户模型类
    # 注册自己的用户模型类: 应用名.模型名,指定我们重写的User表进行身份验证 
    AUTH_USER_MODEL = 'user.User'
    3.2.3 配置mysql
    '''1.创建mysql数据库''' 
    mysql> create database syldb charset utf8; 
    
    '''2.在syl/settings.py中配置mysql''' 
    DATABASES = { 
        'default': { 
            'ENGINE': 'django.db.backends.mysql', 
            'NAME': 'syldb',         # 指定数据库名称:MyCRM 
            'USER': 'root', 
            'PASSWORD': '1', 
            'HOST': '127.0.0.1', 
            'PORT': '3306', 
         } 
    }
    3.2.4 生成表
    python manager.py makemigrations 
    python manager.py migrate

    3.3 数据库问题

    遭遇问题: 
        File "/root/.virtualenvs/syl/lib/python3.6/site-packages/django/db/backends/mysql/operations.py", line 146, in last_executed_query
        query = query.decode(errors='replace')
    AttributeError: 'str' object has no attribute 'decode'
    
        解决问题:
    /root/.virtualenvs/syl/lib/python3.6/site-packages/django/db/backends/mysql/operations.py中
    if query is not None:
        query = query.encode('utf8').decode(errors='replace')
        return query
  • 相关阅读:
    【测试】模拟一个全表扫描的sql,对其进行优化走索引,并且将执行计划稳定到baseLine。
    【练习】手工生成awr报告
    【测试】数据文件的删除恢复
    【练习】行迁移和行链接
    织梦栏目列表页第一个文章与其他文章不同样式
    织梦联动筛选【单选版】-支持手机站使用
    织梦联动枚举字段无二级时去掉多余下拉
    织梦联动类型地区联动三级修复以及省份-市级-地区分开+高亮
    织梦联动枚举字段添加一级分类如果超过132个自动变成二级修复教程
    织梦后台自定义表单联动地区显示为数字的真正解决方法
  • 原文地址:https://www.cnblogs.com/mapel1594184/p/13881367.html
Copyright © 2020-2023  润新知