我确实需要一个精练的技术来糅合我乱七八糟的知识了,既然现在比较急需Django那就使用Django吧。
我会在最近几天学习Django,争取学的深一点,后面还要用到,特别是涉及get和post方面。
暂时的理解是,Django有些像Node的感觉,同样是在特定端口上开启服务。
断断续续的终于理解了一部分
在跑Django前,先整理好自己的Python环境,不要弄错了。
在project的setting.py里配置template的路径:
'DIRS': [os.path.join(BASE_DIR, 'templates')],
然后是注册app:
'appName.apps.AppNameConfig'
改下时区和语言:
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Asia/Shanghai'
Django中urls.py用于配置服务的访问目录,而app是Project的下级目录,一些操作还是要写在app里
使用:django-admin startproject <ProjectName>来创建项目,django-admin startapp <AppName>来创建app
views.py用于与HTML等界面文件交互
当需要将一个HTML界面发布到Django服务上的时候,需要下面几步:
首先,先准备一个HTML文件:Home.html,先放到项目中去
项目中的整理一下目录结构,templates放HTML文件,static放资源
这里共app做案例:
在app中views.py中插入我们的Html文件,这里是以一个python的函数形式参入的,注意函数名:
from django.shortcuts import render
def char(request):
return render(request, '../templates/ChartTest.html')
在app中建一个urls.py文件,文件里的内容是这样的:
from django.urls import path
from web import views
urlpatterns = [
path('', views.char),
]
上面的web是我的app名字,这里明显能看出就是将view中的数据和urls关联起来
再来到Project的urls.py下:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('chart/', include('web.urls')),
]
在app的urls.py里是这样的
from django.urls import path, include
from <这里是app名字> import views
urlpatterns = [
path('', views.chart),
]
然后python manage runserver启动服务就好了,效果如下:
访问路径取决于项目project的urls.pyd的app include的路径,后面跟的是app urls.py的配置
例如项目里配置是这样的:
urlpatterns = [
path('admin/', admin.site.urls),
path('ai/', include('web.urls')),
]
app的配置是这样的
urlpatterns = [
path('home/', views.home),
]
那么访问路径就是:ai/home,这样就能划分好多个app的路径了