python dj框架 文档_Python Day 75 Djaango框架 CRM项目(版本一)、

##CRM版本一实现功能

#1、新建一个stark组件

组件就是应用

一个项目可以有多个应用

一个应用可以用在多个项目中

#2、参考admin源码 实现路由分发

#3、数据展示

表头展示

表单展示

#4、自定义数据列

#5、反向解析

#掌握技术点

from app01 import models

models.Book._meta.app_label #获得模型表所在的应用名'app01'

models.Book._meta.model_name #获得模型表对应的字符串名'book'

from app01 import models

models.Book._meta.get_field('title')

# 获取字段对象

models.Book._meta.get_field('title').verbose_name '书名'

models.Book._meta.get_field('price').verbose_name # 获取字段对象verbose_name属性 当你没有指定的时候默认是字段字符串名'price'

##models 模型表结构

from django.db import models

# Create your models here.

class Author(models.Model):

nid = models.AutoField(primary_key=True)

name=models.CharField( max_length=32)

age=models.IntegerField()

# 与AuthorDetail建立一对一的关系

authorDetail=models.OneToOneField(to="AuthorDetail",on_delete=models.CASCADE)

def __str__(self):

return self.name

class AuthorDetail(models.Model):

nid = models.AutoField(primary_key=True)

birthday=models.DateField()

telephone=models.BigIntegerField()

addr=models.CharField( max_length=64)

def __str__(self):

return self.addr

class Publish(models.Model):

nid = models.AutoField(primary_key=True)

name=models.CharField( max_length=32)

city=models.CharField( max_length=32)

email=models.EmailField()

def __str__(self):

return self.name

class Book(models.Model):

nid = models.AutoField(primary_key=True)

title = models.CharField(max_length=32,verbose_name='书名')

publishDate=models.DateField(verbose_name='出版日期')

price=models.DecimalField(max_digits=5,decimal_places=2, verbose_name='价格')

# 与Publish建立一对多的关系,外键字段建立在多的一方

publish=models.ForeignKey(to="Publish",to_field="nid",on_delete=models.CASCADE) # django 2.0版本必须写 1.0默认

# 与Author表建立多对多的关系,ManyToManyField可以建在两个模型中的任意一个,自动创建第三张表

authors=models.ManyToManyField(to='Author',)

def __str__(self):

return self.title

View Code

##修改启动文件 C:\starkpro\stark\apps.py

启动

django一启动就要执行每一个应用下的stark.py(单独新建的一个文件)文件(django默认会启动admin.py文件)

配置文件中注册

INSTALLED_APPS = [

'stark.apps.StarkConfig',

]

在StarkConfig类中 固定写ready方法

from django.apps import AppConfig

from django.utils.module_loading import autodiscover_modules

class StarkConfig(AppConfig):

name = 'stark'

def ready(self):

# 项目启动就会自动查找每一个应用下的stark.py

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值