Django 2.0 基础

1.创建

a、创建项目:对应文件cmd: django-admin startproject ~
b、然后cd到上面创建的~文件下创建app: python manage.py startapp ~
c、然后是运行: python manage.py runserver
e、数据库与模型modles对应,orm关系映射
1)模型通过orm转化成表(一个表对应一个模型里的类class)
首先执行生成迁移文件:python manage.py makemigrations
然后执行迁移:python manage.py migrate
2)数据库通过orm转化成模型

python manage.py inspectdb
#将模型导入创建的app中去
python manage.py inspectdb > app/models.py

2.设置

a、创建app添加到设置中
b、链接到数据库,后续需要

#连接数据库,然后记得init里写上  import pymysql   然后一句话换行 pymysql.install_as_MYSQLdb()
# DATABASES = {
#     'default': {
#         'ENGINE': 'django.db.backends.mysql',
#         'NAME': '',  #对应数据库名
#         'USER':'',
#         'PASSWORD':'',
#         'HOST':'localhost',
#         'POST':'3306',
#     }
# }

c、语言和时间格式

#语言和时间格式
LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'

d、templates模板和static静态文件设置

#模板
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',
            ],
        },
    },
]
#静态
STATIC_URL = '/static/'
STATICFILES_DIRS=[
    os.path.join(BASE_DIR,'static')
]
MEDIA_ROOT=os.path.join(BASE_DIR,r'static/media')

e、app里urls与主项目urls管理关联
注意:include添加namespace报错需要在app urls里添加这句app_name=app名

#主urls
from django.contrib import admin
from django.urls import path,include


urlpatterns = [
    path('admin/', admin.site.urls),
    path('',include('file.urls',namespace='file')),
]
#app urls
from django.urls import path
from . import views

app_name="file"  #include添加namespace报错需要添加这句app_name
urlpatterns = [
    path('',views.home,name='home'),
    path('test/',views.test,name='test'),

]

f、block块和static 引入问题

1)extends

#先base页面写上需要插入内容的块格式
{% block c %}
 {% endblock  %}
#然后再需要引用的模板页面进行引用并插入相关内容
{% extends './test.html' %}
{% block c %}
    块填入
<h1>{{aa}}</h1>
<h1>{{aa}}</h1>
{% endblock %}

1)load static

#首先也是需要先引入
{% load static %}
#然后这种格式插入静态文件内容
{% static "file/img/timg.jpg" %}

g、urls name引用问题(可以路由地址随便变,模板页面引用了可以不用去改)

#主要就是url方法
 <a href="{% url 'file:home' %}"><h1>{{ aa }}</h1></a>

猜你喜欢

转载自blog.csdn.net/weixin_42357472/article/details/83479612