django组件
(1)Form是Django提供的一个组件,主要作用有:生成页面可用的HTML标签、对用户提交的数据进行校验、保留上次输入内容
(2)form与model的结合,根据model中的字段转换成对应的form字段,并且生成标签等操作。
1.创建项目:先cd到文件夹中,输入
D:\pythonProject1\djangoproject>“D:\Anaconda\envs\pythonProject1\Scripts\django-admin.exe” startproject djangoprojrct
2.创建app01文件夹:在pycharm终端中输入
python manage.py startapp app01
3.命令行启动django:pycharm终端输入
python manage.py runserver
4.app01下创建templates,在templates中添加html文件(settings.py中会规定templates的默认路径,可以删掉,程序就会自己去寻找templates)
5.django为了更便于使用数据库,相比于flask,django拥有ORM机制:
ORM机制创建、修改、删除数据库的表和操作表中数据,不用再写sql语句。
1.django连接数据库
settings增加配置:DATABASEA={
‘defalut’:{
‘ENGINE’:‘django.db.backends.mysql’,
‘NAME’:‘django2’,
‘USER’:‘root’,
‘PASSWORD’:‘123’,
‘HOST’:‘127.0.0.1’,
‘PORT’:3306,
}
}
2.向数据库中增加表,就在app01下models中增加class
然后pycharm终端输入:python manage.py makemigrations
python manage.py migrate进行迁移
最后打开终端show tables;即可看到新出现的表。
3.对部门ID字段 进行约束,应用外键ForeignKey,与部门ID表关联,这样部门ID只能是部门ID表中的值;
若部门被删除,那么
(1)部门下的成员都被删除,使用级联删除,用on_delete=models.CASCADE
(2)部门成员的所属部门值为空(该值允许为空时),on_delete=models.SET_NULL
4.django中的模板继承
在Html中被继承的模板中加入
{% extendds ‘layout.html’ %}
{% block content %}
{% endblock %}
继承时增加{% block content %}{% endblock %}即可继承想要的模板
5.django组件
Form组件(小简便)
ModelForm组件(最简便)
(1)Form组件,简化html
在view.py中增加类MyForm,继承django的内置Form:
class MyForm(Form):
user=forms.CharFields(weight=forms.Input)#添加内置插件,用来Input
user=forms.CharFields(weight=forms.Input)
则在user_add.html中写代替标签:
{
{form.