当前位置: 首页 > news >正文

网站建设框架程序环球网疫情最新动态

网站建设框架程序,环球网疫情最新动态,免费手游推广代理平台渠道,东莞做网站还赚钱吗了解Django框架下如何配置数据库链接与创建模型和应用 使用Django创建web项目,首先需要了解生成的项目文件结构,以及对应文件功能用途方可开始web项目页面创建,下方先介绍文件功能,之后再配置数据库连接以及管理创建模型与应用&a…

了解Django框架下如何配置数据库链接与创建模型和应用

使用Django创建web项目,首先需要了解生成的项目文件结构,以及对应文件功能用途方可开始web项目页面创建,下方先介绍文件功能,之后再配置数据库连接以及管理创建模型与应用,最后创建超级管理员启动django自带的管理站点界面。

1. 项目文件目录与功能介绍

从(一)中找到初始化生成的项目文件如下:

test004 //主文件夹
--- test004  --- __init__.py  //一个空文件,标识该目录为一个Python包--- settings.py  //项目的配置文件--- urls.py  //路由文件 项目的URL声明--- asgi.py  //作为你的项目的运行在 ASGI 兼容的 Web 服务器上的入口--- wsgi.py  //作为你的项目的运行在 WSGI 兼容的Web服务器上的入口
--- manage.py // 进行交互的命令行工具

2.将已创建本网站记入配置

我们的应用名称为test004,具体添加如下:
在这里插入图片描述

3.配置文件(数据库)

打开test004/setting.py,这里配置关乎Django项目设置的Python模块,默认该配置文件使用SQLite作为默认数据库,,当然我们在(二)安装了PostgreSQL作为本测试项目的数据库,需要在setting.py中对数据库进行配置,但是连接数据库只有这些配置是没有用的,还需要对应连接的python模块psycopg2依赖包,安装命令如下:

pip install psycopg2

执行结果如下:
安装连接pg数据库的依赖包对应配置setting.py初始DATABASES 如下:

DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': BASE_DIR / 'db.sqlite3',}
}

对setting.py修改部分内容如下:

DATABASES = {'default': {'ENGINE': 'django.db.backends.postgresql_psycopg2','NAME''test004','USER':'postgres','PASSWORD':'123456','HOST':'localhost','PORT':'5432',}
}

下面我们尝试一下是否可以连接到数据库,我们执行一下命令:

python manage.py migrate

如果结果如下:
在这里插入图片描述
你会神奇的发现数据库test004中多了很多的表,这些表是之前自带框架中主要是认证授权系统中使用到的表,截图如下:
在这里插入图片描述
当你学会创建模型时可以执行该命令,自动替你创建数据库中对应的表,同时也表示数据库配置已经完成。

4. 创建应用与模型

使用Django框架,在创建模型时,要求创建一个app应用,我们使用一下命令创建一个DoctorInfo的app:

django-admin startapp DoctorInfo

执行后生成的目录结构如下:

test004
|-- test004
|-- manage.py
...
|-- DoctorInfo
|   |-- migrations
|   |-- __init__.py
|   |-- admin.py
|   |-- apps.py
|   |-- models.py
|   |-- tests.py
|   |-- views.py

我们修改DoctorInfo/models.py代码如下:

from django.db import models
import uuid
# Create your models here.class Doctor(models.Model):did = models.UUIDField(primary_key=True,default=uuid.uuid4,editable=False)realname = models.CharField(max_length=20)professional = models.CharField(max_length=20)
class DocGoodAtInfo(models.Model):doctor = models.ForeignKey(Doctor,on_delete=models.CASCADE) #外键goodat = models.CharField(max_length=200)update = models.DateTimeField('date published') #日期字段

将该应用添加到主站点中,操作如下:

INSTALLED_APPS = ['DoctorInfo.apps.DoctorinfoConfig', #自行创建应用'django.contrib.admin', #管理员站点'django.contrib.auth', #认证授权系统'django.contrib.contenttypes',  #内容类型框架'django.contrib.sessions', #会话框架'django.contrib.messages', #消息框架'django.contrib.staticfiles', #管理静态文件的框架'test004',
]

执行以下命令,可以在对应数据库中创建表:

python manage.py makemigrations DoctorInfo

执行结果如下:
在这里插入图片描述

当我们执行命令遇到错误 ValueError: source code string cannot contain null bytes,这属于编码问题,找到改动的文件,修改对应编码为UTF-8
在这里插入图片描述

5.创建超级管理员密码打开管理站点界面

记住执行命令前先进入对应目录,这里不再详细说明,我们先创建一个管理员账户密码,执行命令如下:

python manage.py createsuperuser

在这里插入图片描述
管理员账户密码创建完成,让我们启动服务器打开管理站点python manage.py runserver,启动完成后,在浏览器中访问http://127.0.0.1:8000/admin,可以看到管理站点登陆页面入口,输入我们刚刚创建的管理员账号密码
在这里插入图片描述
进入之后我们可以看到,截图如下:
在这里插入图片描述
而且通过点击Users的Change,我们可以编辑刚刚创建的即当前登录的账号,截图如下:
在这里插入图片描述

6.将新创建应用的模型类加入管理站点中

我们需要编辑应用中的DoctorInfo/admin.py

from django.contrib import adminfrom .models import Doctor
from .models import DocGoodAtInfo
# Register your models here.admin.site.register(Doctor)
admin.site.register(DocGoodAtInfo)

我们刷新管理站点界面后就会发现多了两项管理内容:
在这里插入图片描述
我们从这里可以直接编辑数据库数据

7. 开始创建可用的视图页面第一步创建应用自己的urls.py

Django默认不会给应用自动创建urls.py,因此为了以便概述划分为应用程序的项目的整个 url 结构,最好创建自己的DoctorInfo/urls.py,然后在主站点test004下的urls.py中引入,创建如下:

from django.urls import path
from . import views
urlpatterns = [path('', views.index, name='index'),
]

下一步在根URLconf文件中指定我们创建的DoctorInfo.urls模块。在test004/urls.py文件的urlpatterns插入相关部分,如下

from django.contrib import admin
from django.urls import include,pathurlpatterns = [path('DoctorInfo/',include('DoctorInfo.urls')),path('admin/', admin.site.urls),
]

8.创建模板目录以及html文件和对应的view修改

首先我们能在DoctorInfo目录下创建一个templates目录,Django将在这个目录中查找模板文件,编写对应的DoctorInfo/views.py

from django.shortcuts import renderfrom .models import Doctor# Create your views here.def index(request):last_doctot_list = Doctor.objects.order_by('-crtime')[:5]context = {'last_doctot_list':last_doctot_list}return render(request,'DoctorInfo/index.html',context)

创建DoctorInfo/templates/index.html,完整代码如下:

<!DOCTYPE html>
<head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><meta name="description" content="测试版应用首页"><title>小应用首页</title><style></style>
</head>
<body><div class="top"></div><div class="main">{% if last_doctot_list %}<ul>{% for doctor in last_doctot_list %}<li><a href="/DoctorInfo/{{ doctor.did }}">{{ doctor.realname }} - {{ doctor.professional }}</a></li>{% endfor %}</ul>{% else %}<p>No doctor are available</p>{% endif %}</div>
</body>
</html>

创建完成后,我们就开始测试吧启动server,显示如下:
在这里插入图片描述
因为我们并没有添加对应数据,表示一张空表

9. 下面我们使用pythonshell来创建一条数据

首先进入主站点根目录下,输入命令python manage.py shell,按照下方代码输入,这里直接使用截图显示:
在这里插入图片描述
然后我们再刷新页面看页面显示,截图如下:
在这里插入图片描述
从截图中我们看出,页面已经将刚加入数据库中的数据显示出来了

http://www.dinnco.com/news/23301.html

相关文章:

  • 网站安全建设进展情况汇报国际局势最新消息今天
  • 上饶做网站公司百度云资源搜索引擎
  • php在网站制作中的运行机制网站制作河南
  • 广州网站建设公司乐云seo598郑州优化公司有哪些
  • 网站备案号含义关键词优化推广排名软件
  • 炫酷网站设计百度地图导航2021最新版
  • 苏州网站制作简述如何对网站进行推广
  • 哈尔滨做网站的oeminc网上开店如何推广自己的网店
  • 网站建设功能要求广州中小企业seo推广运营
  • 成都旅游景点排名前十名抚顺优化seo
  • 如何免费申请自己的网站seo网站关键词优化怎么做
  • 网站域名注册服务商广告推广怎么做
  • 欧美做瞹瞹嗳免费视频网站营销策略范文
  • wordpress 云相册seo网站优化推荐
  • 兑换网站建设天津seo排名费用
  • 大连做网站的企业河北网络科技有限公司
  • 云南房产网站建设整站seo排名
  • 西安南郊做网站seo技巧优化
  • 仿v电影 wordpressseo优化推荐
  • 做外贸用哪些网站女教师遭网课入侵视频大全
  • 建站模板免费国内搜索引擎排名
  • mvc5网站开发之美网络网站
  • 广州优俊网站制作公司竞价托管推广公司
  • 长春网站制作价格社区建站网站系统
  • 做app需要学什么编程上海网络营销seo
  • 入驻微信小程序多少钱陕西优化疫情防控措施
  • 沧州免费网站建设网络营销推广合作
  • 做布料的著名网站百度关键词优化快速排名软件
  • 英山县住房和城乡建设局网站seo优化的主要任务包括
  • 网站建设网站网站建设网站新浪体育nba