• luffy项目后端初始化


    luffyapi:  --- 项目根目录

      manage.py  --- 执行脚本

      docs:  --- 文档目录(新建)

      logs:  --- 日志目录(新建)

      scripts:  --- 脚本目录(新建)

      media:  --- 媒体目录(新建)

      luffyapi:  --- 项目主应用目录

        urls:  --- 总路由

        wsgi:  --- 发布脚本

        apps:  --- 子应用目录(新建)

        libs:  --- 第三放库目录(新建)

        utils:  --- 子应用的公共组件目录(包,新建)

        settings:  --- 配置目录(包,新建)

          dev.py  --- 开发配置(新建)

          pro.py  --- 上线配置(新建)

    一、初始化事项

      1、因为修改了配置文件路径

        ①manage.py中的:

          os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings') =>

          os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.dev')

        ②pycharm运行环境配置中加上:DJANGO_SETTINGS_MODULE=luffyapi.settings.dev。

        ③luffyapi.wsgi.py中的:

          os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings')  =>

          os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyapi.settings.pro')

      2、国际化,luffyapi.settings.dev.py中:

        ①LANGUAGE_CODE = 'en-us' => 'zh-hans'。

        ②TIME_ZONE = 'UTC' => 'Asia/shanghai'。

        ③USE_TZ = True => False。

      3、创建应用:

        ①<manage.py startapp app名>在哪个目录下执行,就会将app目录创建在该目录下。

        ②cd到luffyapi.apps目录下:python ....manage.py startapp user。

      4、环境变量相关:

        ①luffyapi.settings.dev.py中:  

    # 现在的BASE_DIR不再是原本项目根目录,而变成了内部主应用目录luffyapi,不会自动加入环境变量
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    # 把现在的BASE_DIR加入到环境变量
    sys.path.insert(0,BASE_DIR)
    # 把apps目录也加入到环境变量
    sys.path.insert(1,os.path.join(BASE_DIR,'apps'))

        ②右击luffyapi.apps:Mark Directory as => Sources Root。

    二、数据库相关

      1、管理员登录数据库:mysql -uroot -p123。

      2、创建项目数据库:create database luffyapi。

      3、创建数据库用户,授予luffyapi库的所有权限,并允许远程(本地连接):

        grant all privileges on luffyapi.* to 'caoyu111'@'%' identified by 'caoyu333';

        grant all privileges on luffyapi.* to 'caoyu111'@'localhost' identified by 'caoyu333';

      4、立即刷新:flush privileges。

      5、luffyapi.settings.dev.py中:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'luffyapi',
            'USER': 'luffyapi',
            'PASSWORD': 'Luffy123?',  # 密码可以环境变量中引用 sys.path.get(键,默认值)
            'HOST': '127.0.0.1',
            'PORT': 3306,
            'CHARSET': 'utf8'
        }
    }
    import pymysql
    
    pymysql.install_as_MySQLdb()

      6、异常改源码:

    # if version < (1, 3, 13):
    #     raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

     三、媒体目录

      1、luffyapi.settings.dev.py中:

    MEDIA_URL = '/media/'
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

      2、luffyapi.urls中:

    from django.conf import settings
    from django.views.static import serve
    urlpatterns
    = [ ... re_path('media/(?P<path>.*)', serve, {'document_root': settings.MEDIA_ROOT}) ]
  • 相关阅读:
    redhat 6安装详解
    使用pidstat查看进程资源使用情况
    (转)调优 DB2 UDB v8.1 及其数据库的最佳实践
    (转)LVS安装使用详解
    (转)[小工具] Linux下列格式化工具
    (转)zabbix3.4使用percona-monitoring-plugins监控mysql
    (转)zabbix之生产案例
    (转)CentOS7 LVM添加硬盘及扩容
    (转)计算机网络基础知识总结
    (转)网络基础之网络协议篇
  • 原文地址:https://www.cnblogs.com/caoyu080202201/p/13324426.html
Copyright © 2020-2023  润新知