zoukankan      html  css  js  c++  java
  • django-settings.py配置

      1 django settings 详细资料
      2 
      3 
      4 ############ 开始项目
      5 python3.5 pip -m install django==1.11.7 指定版本安装
      6 pip3 install django 安装django
      7 django-admin.py startproject mysite 创建django项目
      8 python manage.py startapp blog 创建应用
      9 python manage.py runserver 8080 启动django
     10 
     11 python manage.py makemigrations 同步更新数据库 --fake
     12 python manage.py migrate 
     13 
     14 python manage.py createsuperuser 创建admin超级用户
     15 
     16 
     17 
     18 ############# 添加项目
     19 INSTALLED_APPS = [
     20     'django.contrib.admin',
     21     'django.contrib.auth',
     22     'django.contrib.contenttypes',
     23     'django.contrib.sessions',
     24     'django.contrib.messages',
     25     'django.contrib.staticfiles',
     26     'app01.apps.App01Config',   # 添加项目,不然找不到项目位置
     27 ]
     28 
     29 ############## 中间键
     30 MIDDLEWARE = [
     31     'django.middleware.security.SecurityMiddleware',
     32     'django.contrib.sessions.middleware.SessionMiddleware',
     33     'django.middleware.common.CommonMiddleware',
     34     # 'django.middleware.csrf.CsrfViewMiddleware',
     35     'django.contrib.auth.middleware.AuthenticationMiddleware',
     36     'django.contrib.messages.middleware.MessageMiddleware',
     37     'django.middleware.clickjacking.XFrameOptionsMiddleware',
     38     ########## 在这里添加,如果不是同目录,需要倒入,其实就是类
     39     'Mymiddle.M1',
     40     'Mymiddle.M2',
     41     
     42 ]
     43 
     44 
     45 ############## 模板html位置。 'DIRS': [os.path.join(BASE_DIR,  'templates'),], 有的版本没有写这个
     46 TEMPLATES = [
     47     {
     48         'BACKEND': 'django.template.backends.django.DjangoTemplates',
     49         'DIRS': [os.path.join(BASE_DIR, 'templates')]
     50         ,
     51         'APP_DIRS': True,
     52         'OPTIONS': {
     53             'context_processors': [
     54                 'django.template.context_processors.debug',
     55                 'django.template.context_processors.request',
     56                 'django.contrib.auth.context_processors.auth',
     57                 'django.contrib.messages.context_processors.messages',
     58             ],
     59         },
     60     },
     61 ]
     62 
     63 
     64 
     65 # 这里更改数据库,# ###################mysql数据库
     66 DATABASES = {
     67     'default': {
     68         'ENGINE': 'django.db.backends.sqlite3',
     69         'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
     70     }
     71 }
     72 
     73 
     74 # DATABASES = {
     75 #     'default': {
     76 #         'ENGINE': 'django.db.backends.mysql',
     77 #         'NAME': 'blog',#数据库名
     78 #         'USER': 'root',
     79 #         'PASSWORD': '123',
     80 #         'HOST':'',#默认localhost
     81 #         'PORT':'3306'
     82 #     }
     83 # }
     84 
     85 
     86 # app01 __init__.# py中写这个,才能指向mysql数据库
     87 # import pymysql
     88 # pymysql.install_as_MySQLdb()
     89 
     90 
     91 
     92 ####################### 静态文件配置
     93 STATIC_URL = '/static/'
     94 
     95 STATICFILES_DIRS=[
     96     os.path.join(BASE_DIR,'static')
     97 ]
     98 
     99 
    100 ####################### orm操作,可以打印出来mysql操作
    101 LOGGING = {
    102     'version': 1,
    103     'disable_existing_loggers': False,
    104     'handlers': {
    105         'console':{
    106             'level':'DEBUG',
    107             'class':'logging.StreamHandler',
    108         },
    109     },
    110     'loggers': {
    111         'django.db.backends': {
    112             'handlers': ['console'],
    113             'propagate': True,
    114             'level':'DEBUG',
    115         },
    116     }
    117 }
    118 
    119 
    120 
    121 ######################### # media 配置
    122 MEDIA_URL = '/media/'
    123 MEDIA_ROOT = os.path.join(BASE_DIR,'app01','media')
    124 
    125 urls 对应
    126     # media 配置,这样可以通过url访问该目录下文件,例如图片
    127     url(r'^media/(?P<path>.*)$', serve,{'document_root':settings.MEDIA_ROOT}),
    128 ]
    129 
    130 
    131 ######################### admin.py 这里添加数据库表,可以通过http://127.0.0.1/admin视图访问
    132 from . models import *
    133 admin.site.register(UserInfo)
    134 admin.site.register(Blog)
    135 admin.site.register(HomeCategory)
    136 admin.site.register(Tag)
    137 admin.site.register(Article)
    138 admin.site.register(ArticleDetail)
    139 admin.site.register(Comment)
    140 admin.site.register(ArticleUpDown)
    141 admin.site.register(Article2Tag)
    142 admin.site.register(SiteCategory)
    143 admin.site.register(SiteDetaiCategory)
    144 
    145 
    146 ###########################
    147 # 因为要利用auth模块认证登录,关联auth_user表(django自带),需要继承AbstractUser,就可以跟auth.user一对一关系 models 里面导入
    148 from django.contrib.auth.models import AbstractUser
    149 class UserInfo(AbstractUser):... 下面写该表字段,就会和auth.user表一对一
    150 # 有了这句,model才能正确的继承,从而使用auth.user settings 里面写入
    151 AUTH_USER_MODEL = "app01.UserInfo"
    1 models里面加入,可以通过admin看到表名字,当然是你自定义的
    2 class Meta:
    3     verbose_name_plural = '权限表'    
    admin视图,可以看到表字段成在一个页面显示,一个字段是一列
    from django.contrib import admin
    
    # Register your models here.
    
    class PermissionCongfig(admin.ModelAdmin):  #
        list_display = ['title','url','code']   # 字段
    
    from rbac import models
    
    admin.site.register(models.Permission,PermissionCongfig) # 注意逗号,后面加入类
    上面提到过如何修改django的数据库,如何连接到的配置,还有一点就是要在app或者项目的初始化文件__init__中加入:
        import pymysql
        pymysql.install_as_MySQLdb()
    {% load staticfiles %}
    <linkrel="stylesheet"href{%static"stark/bootstrap/css/bootstrap.css" %}"/>
    # 静态html文件,通常用load引入
  • 相关阅读:
    简单优化:Zipalign
    Using lists in Android (ListView)
    6410移植RT3070无线模块,WPA加密方式,并开机自动加载
    html表格的动态增加删除
    html 中表格长度固定
    跨域 Iframe 通信解决方案(兼容 IE 系列浏览器。)
    Sass 基础和入门
    javascript 模块化编程 1
    Canvas的方法覆盖和实现新的API
    获取鼠标点击相对于Canva位置的2种方法
  • 原文地址:https://www.cnblogs.com/jokerbj/p/8146062.html
Copyright © 2011-2022 走看看