最近又又又开始学习django了,希望这次不会半途而废了。
他的这个课程讲的不错。如果每个视频都有相关的课件就好了。
为了自己学习和复习方便,我把学习过程中的一些操作记录在这里。
这是他课程的第5讲,开发职位管理的后台。
TOC
step 1 在terminal中
django-admin startproject recuitment
cd recuitment
python manage.py startapp jobs
step2 在settings.py 中INSTALLED_APPS 注册‘jobs’ , 同时将 语言从英文改为中文
INSTALLED_APPS = [
#其他的不改变
'jobs',
]
#找到LANGUAGE_CODE 改为‘zh-hans’
LANGUAGE_CODE = 'zh-hans'
step 3 到 jobs 的models 中建立数据表
from django.db import models
from django.contrib.auth.models import User
# Create your models here.
JobTypes= [
(0,"技术类"),
(1,"产品类"),
(2,"运营类"),
(3,"设计类"),
]
Cities = [
(0,"北京"),
(1,"上海"),
(2,"深圳"),
]
class Job(models.Model):
job_type=models.SmallIntegerField(blank=False,choices=JobTypes,verbose_name="职位类别")
job_name = models.CharField(max_length=250,blank=False,verbose_name="职位名称")
job_city = models.SmallIntegerField(choices = Cities, blank=False, verbose_name="工作地点")
job_responsibility = models.TextField(max_length=1024, verbose_name="职位职责")
job_recruitment = models.TextField(max_length=1024,blank=False, verbose_name="职位要求")
creator = models.ForeignKey(User, verbose_name="创建人", null=True, on_delete=models.SET_NULL)
created_date = models.DateTimeField(verbose_name="创建日期")
modified_date = models.DateTimeField(verbose_name="修改时间")
JobTypes 是一个 truple, 在下面用 choices来进行调用
- (0,"北京"),
- 0 代表显示的序号,
- " " 双引号内部展示名称
- ( )包含一组信息
- , 代表信息与信息之间的区隔
Cities 也是一个 truple,也用choices来调用
job_type=models.SmallIntegerField(blank=False,choices=JobTypes,verbose_name="职位类别")
- SmallIntegerField 代表是数字
- blank = False 代表可以为空
- choices=JobTypes choices 代表下拉菜单,可以从上面JobTypes 中选择数据
- verbose_name="职位类别", verbose_name 表示在页面中展示出来的信息,可以是中文信息,也可以是英文信息
job_name = models.CharField(max_length=250,blank=False,verbose_name="职位名称")
- max_length=250 代表最长字符是250
job_responsibility = models.TextField(max_length=1024, verbose_name="职位职责")
- models.TextField (max_length=1024, verbose_name="职位职责")
TextField代表长文本数据
creator = models.ForeignKey(User, verbose_name="创建人", null=True, on_delete=models.SET_NULL)
- creator = models.ForeignKey(User, verbose_name="创建人", null=True, on_delete=models.SET_NULL)ForeignKey 表示从其他数据表中引入的外键,所以就必须 import 来源
from django.contrib.auth.models import User - null=True, on_delete=models.SET_NULL 表示删除用户后,数据表中的数据仍然保留。
如果想要级联删除,就用 on_delete=models.CASCADE: 默认的,级联删除
created_date = models.DateTimeField(verbose_name="创建日期")
- DateTimeField创建的时间
step4 在 Jobs/admin.py 中注册
from django.contrib import admin
from jobs.models import Job
# Register your models here.
admin.site.register(Job)
from jobs.models import Job
- 从 jobs 中models.py 引入 Job这个函数
admin.site.register(Job)
- 在 admin 管理页面中引入Job的函数,这样就可以添加数据了
step5 在terminal 中 建立数据表,建立superuser
python manage.py makemigrations
python migrate
python createsuperuser
#按要求建立admin 账号
step5 启动 http://127.0.0.1/admin, 添加职位信息,并查看
添加用户职位信息的地方可以优化的地方
职位信息的后台显示,如果能够优化就更好了。
10分钟的视频,笔记写了1个小时。
希望能学会Django编程,不负时光。