class Article(models.Model): title = models.CharField(u"博客标题", max_length=100) # 博客标题 category = models.CharField(u"博客标签", max_length=50, blank=True) # 博客标签 pub_date = models.DateTimeField(u"发布日期", auto_now_add=True, editable=True) # 博客发布日期 update_time = models.DateTimeField(u'更新时间', auto_now=True, null=True) #content = models.TextField(blank=True, null=True) # 博客文章正文 content = UEditorField(u"文章正文", height=300, width=1000, default=u'', blank=True, imagePath="uploads/blog/images/", toolbars='besttome', filePath='uploads/blog/files/') def __unicode__(self): return self.title class Meta: # 按时间下降排序 ordering = ['-pub_date'] verbose_name = "文章" verbose_name_plural = "文章"
class Blog(models.Model): title = models.CharField(u'标题', max_length=100) head_pic_url = models.CharField(u'头图链接', max_length=250, default='/static/img/default.jpg') pub_time = models.DateTimeField(auto_now_add=True) brief = models.CharField(u'摘要', max_length=200, blank=True, null=True) content = UEditorField(u'正文', width=900, height=600, toolbars="full", imagePath="", settings={}) page_views = models.PositiveIntegerField(u'阅读量', default=0, editable=False) category1 = models.ForeignKey(Category1, verbose_name=u'一级目录') category2 = models.ForeignKey(Category2, null=True, verbose_name=u'二级目录') tags = models.ManyToManyField(Tag, blank=True, verbose_name=u'标签') def __unicode__(self): return self.title class Meta: ordering = ['-pub_time']
class NOTICE(models.Model): no_title = models.CharField(max_length=100, verbose_name="通知标题") no_brief = models.CharField(max_length=200, verbose_name="通知概要", help_text="请不要超过100个汉字") no_body = UEditorField(verbose_name="通知内容", imagePath="ueditor/images/", filePath="ueditor/files/", settings=settings.UEDITOR_SETTINGS['config'], upload_settings={'imageMaxSize': 2048000}) no_time = models.DateTimeField(verbose_name="通知时间") no_type = models.IntegerField(verbose_name="通知类型", choices=NOTICES_TYPE) no_sort = models.IntegerField(verbose_name="优先级") no_is_delete = models.IntegerField(verbose_name="是否删除", default=0, choices=NOTICES_STATUS) def __unicode__(self): return self.no_title class Meta: verbose_name = '系统通知' verbose_name_plural = '系统通知管理'
class Article(models.Model): title = models.CharField(max_length=50, verbose_name='文章标题') desc = models.CharField(max_length=50, verbose_name='文章描述') content = UEditorField(verbose_name='内容', width=800, height=300, imagePath='editor/article/%(year)s/%(month)s/') click_count = models.IntegerField(default=0, verbose_name='点击次数') comment_count = models.IntegerField(default=0, verbose_name='评论次数') date_publish = models.DateTimeField(auto_now_add=True, verbose_name='发布时间') user = models.ForeignKey(User, verbose_name='用户') category = models.ForeignKey(Category, blank=True, null=True, verbose_name='分类') tag = models.ManyToManyField(Tag, verbose_name='标签') objects = ArticleManager() class Meta: verbose_name = '文章' verbose_name_plural = verbose_name ordering = ['-date_publish'] def __str__(self): return self.title
class Column(models.Model): name = models.CharField('栏目名称', max_length=256) slug = models.CharField('栏目网址', max_length=256, db_index=True) intro = UEditorField('栏目简介', height=300, width=800, default=u'', blank=True, toolbars='besttome') nav_display = models.BooleanField('导航显示', default=False) home_display = models.BooleanField('首页显示', default=False) def get_absolute_url(self): return reverse('column', args=(self.slug, )) def __str__(self): return self.name class Meta: verbose_name = '栏目' verbose_name_plural = '栏目' ordering = ['name']
class GoodsInfo(models.Model): # 商品信息 gtitle = models.CharField('商品名称', max_length=20) gpic = models.ImageField('商品图片', upload_to='df_goods', null=True, blank=True) # 商品图片 gprice = models.DecimalField('商品价格', max_digits=7, decimal_places=2) # 总共最多有7位,小数占2位 gunit = models.CharField('商品单位', max_length=20, default='带盆载好') # 商品的状 态 gclick = models.IntegerField('点击量') # 商品点击量,便于排人气 isDelete = models.BooleanField('是否删除', default=False) gjianjie = models.CharField('简介', max_length=200) # 商品简介 gkucun = models.IntegerField('库存') # 商品库存 gcontent = UEditorField('详细介绍', height=300, width=1000) #gcontent = HTMLField# 商品详细内容 gtype = models.ForeignKey(TypeInfo, verbose_name='所属分类', on_delete=models.CASCADE) # 商品所属类型 # gadv = models.BooleanField(default=False) #商品推荐 class Meta: verbose_name = '商品信息' verbose_name_plural = '商品信息'
class Artical(models.Model): title = models.CharField('标题', max_length=70) excerpt = models.TextField('摘要', max_length=200, blank=True) category = models.ForeignKey(Category, on_delete=models.DO_NOTHING, verbose_name='分类', blank=True, null=True) tag = models.ManyToManyField(Tag, verbose_name='标签', blank=True) img = models.ImageField(upload_to='artical_img/%Y/%m/%d', verbose_name='文章图片', blank=True, null=True) body = UEditorField('内容', width=800, height=500, toolbars="full", imagePath="upimg/", filePath="upfile/", upload_settings={"imageMaxSize": 1204000}, settings={}, command=None, blank=True) user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name='作者') """ 文章作者,这里User是从django.contrib.auth.models导入的. 这里我们通过ForeignKey 把文章和User关联起来 """ views = models.PositiveIntegerField('阅读量', default=0) tui = models.ForeignKey(Tui, on_delete=models.DO_NOTHING, blank=True, null=True) create_time = models.DateTimeField('发布时间', auto_now_add=True) modified_time = models.DateTimeField('修改时间', auto_now=True) class Meta: verbose_name = '文章' verbose_name_plural = verbose_name def __str__(self): return self.title
class CeHua_photos(models.Model): CeHua_url = models.ImageField(u'图片', upload_to='Movie', blank=True) CeHua_Title = models.CharField(u'标题', max_length=30) CeHuaTitle_xd = models.CharField(u'小标题', max_length=30, default='') CeHua_Title_Keyword = models.CharField(u'关键字', max_length=30, default='') CeHua_UserName = models.CharField(u'编辑名称', max_length=30, default='') CeHua_Type = models.CharField(u'分类', max_length=30, default='') CeHua_LaiYuan = models.CharField(u'来源', max_length=30, default='') CeHua_RiQi = models.DateField(u'发布日期', auto_now_add=True) CeHua_Index = models.IntegerField(u'排序', default=2) CeHua_Info = UEditorField(verbose_name=u'内容', width=800, height=600, imagePath="courses/ueditor/", filePath="courses/ueditor/", default='') def __str__(self): return self.CeHua_Title class Meta: verbose_name = "策划" verbose_name_plural = verbose_name
class BlogContent(models.Model): title = models.CharField(u'标题', max_length=255) content = UEditorField('内容', height=300, width=1000, default=u'', blank=True, imagePath="uploads/images/", toolbars='besttome', filePath='uploads/files/') pub_date = models.DateTimeField(u'发布时间', auto_now_add=True, editable=True) update_date = models.DateTimeField(u'更新时间', auto_now_add=True, null=True) cate = models.ManyToManyField(Cate, verbose_name='栏目') ob = models.IntegerField(u'排序', default=99) display = models.BooleanField(u'是否显示', default=True) image = models.ImageField(upload_to='uploads/images/', blank=True) class Meta: verbose_name = "文章管理" verbose_name_plural = "文章管理" def __unicode__(self): return self.title
class Article(models.Model): title = models.CharField(u'博客标题', max_length=100) category = models.CharField(u'博客标签', max_length=50, blank=True) pub_date = models.DateTimeField(u'发布日期', auto_now_add=True, editable=True) update_time = models.DateTimeField(u'更新日期', auto_now_add=True, null=True) #content = models.TextField(blank=True,null=True) content = UEditorField(u"文章正文", height=300, width=1000, default=u'', blank=True, imagePath="uploads/blog/images/", toolbars='besttome', filePath='uploads/blog/files/') def __unicode__(self): return self.title #内部模型 class Meta: ordering = ['-pub_date'] #降序排列 verbose_name = '文章' verbose_name_plural = '文章'
class Article(models.Model): title = models.CharField(max_length=100, verbose_name='标题') slug = models.SlugField(unique_for_year='publish_date', verbose_name='描述') author = models.ForeignKey(User, verbose_name='作者') # content = models.TextField(verbose_name='内容') #插入图片 定义文章内容不同的管理风格 content = UEditorField(u'内容', height=400, width=600, default='', imagePath="upload/", toolbars='mini', filePath='upload/', blank=True) status = models.CharField(max_length=2, verbose_name='状态') tags = models.ManyToManyField(Tag, blank=True) #多对多关系 publish_date = models.DateTimeField(default=datetime.datetime.now(), verbose_name='发布日期') expiration_date = models.DateTimeField(blank=True, null=True, verbose_name='有效日期') is_active = models.BooleanField(default=True, blank=True, verbose_name='是否热门') item = models.ForeignKey(Item, verbose_name='类别名称') #django对图片上传的封装 pic = models.ImageField(upload_to='uploads', verbose_name='图片') def __unicode__(self): return self.title class Meta: verbose_name = '新闻文章' verbose_name_plural = verbose_name
class Profile(models.Model): title = models.CharField(u'Title', max_length=100) head_pic_url = models.CharField(u'Head_pic_url', max_length=250, default='/static/img/default.jpg', null=True, blank=True) pub_time = models.DateTimeField(auto_now_add=True) content = UEditorField(u'Content', width=900, height=600, toolbars="full", imagePath="", settings={}) tags = models.ManyToManyField(Profile_Tag, blank=True, verbose_name=u'Tags') def __unicode__(self): return self.title class Meta: ordering = ['-pub_time']
class Article(models.Model): title = models.CharField(max_length=150) # 博客题目 category = models.CharField(max_length=50, blank=True) #博客分类 可为空 tag = models.ForeignKey(Tag, blank=True, default='') # 博客标签 可为空 date_time = models.DateTimeField(auto_now_add=True) #博客日期 click_number = models.IntegerField(default=0, verbose_name=u"点击数") year = models.IntegerField(default=int(datetime.now().year), verbose_name=u'年份') # content = models.TextField(blank = True, null = True) #博客文章正文 content = UEditorField(verbose_name=u'博客==内容', width=900, height=500, imagePath="ueditor/", filePath="ueditor/", blank=True, default="") class Meta: verbose_name = u'文章' verbose_name_plural = verbose_name def __unicode__(self): return '{0}(类别: {1})'.format(self.title, self.tag)
class BlogsArticle(models.Model): title = models.CharField(max_length=50, verbose_name='文章标题') desc = models.CharField(max_length=50, verbose_name='文章描述') content = UEditorField(verbose_name=u"文章内容", imagePath="article/images/", width=1000, height=300, filePath="article/files/", default='') click_count = models.IntegerField(default=0, verbose_name='点击次数') is_recommend = models.BooleanField(default=False, verbose_name='是否推荐') date_publish = models.DateTimeField(auto_now_add=True, verbose_name='发布时间') user = models.ForeignKey(User, verbose_name='用户') category = models.ForeignKey(BlogsCategory, verbose_name='分类') tag = models.ManyToManyField(BlogsTag, verbose_name='标签') objects = BlogsArticleManager() class Meta: verbose_name = '文章' verbose_name_plural = verbose_name def __unicode__(self): return self.title def __str__(self): return self.title
class FlatPage(models.Model): class Meta: verbose_name = '单页面' verbose_name_plural = '单页面' title = models.CharField(verbose_name='标题', max_length=100, null=False, blank=False) url = models.CharField(verbose_name='url', max_length=100, null=False, blank=False) # content = UEditorField(verbose_name='正文', null=False, blank=False, **deeru_rich_editor['article_kwargs']) content=UEditorField(verbose_name='正文', null=False, blank=False, width=600, height=300, toolbars="full", imagePath="", filePath="", upload_settings={"imageMaxSize":1204000}, settings={},command=None) created_time = models.DateTimeField(verbose_name="创建时间", default=timezone.now, editable=False) modified_time = models.DateTimeField(verbose_name="修改时间", auto_now=True) def __str__(self): if len(self.title) <= 15: return '单页面-%d<%s>' % (self.id, self.title) else: return '单页面-%d<%s...%s>' % (self.id, self.title[:7], self.title[-8:]) def get_absolute_url(self): return reverse('app:detail_flatpage', args=(self.url,))
class About(models.Model): alias = models.CharField('艺名', max_length=20, blank=False, null=False) addr = models.CharField('地址', max_length=50, blank=True, null=True) mail = models.EmailField('邮箱', max_length=50) qqnum = models.CharField('QQ号', max_length=11, blank=False, null=False) sign = models.CharField('个性签名', max_length=20, blank=True, null=True) body = UEditorField('文章内容', width=800, height=500, toolbars="full", imagePath="upimg/", filePath="upfile/", upload_settings={"imageMaxSize": 1204000}, settings={}, command=None, blank=True) class Meta: verbose_name = '站长信息' verbose_name_plural = verbose_name def __str__(self): return self.alias
class Article(models.Model): title = models.CharField(u"title", max_length=100, blank=True) category = models.CharField(u"cate", max_length=50, blank=True) pub_date = models.DateField(u"pub_date", auto_now_add=True, editable=True) update_date = models.DateField(u"up_date", auto_now=True) # content = models.TextField(u"content", null=True, blank=True) content = UEditorField(u"文章正文", height=300, width=1000, default=u'', blank=True, imagePath="uploads/blog/images/", toolbars='besttome', filePath='uploads/blog/files/') def __unicode__(self): return self.title class Meta: db_table = 't_article' ordering = ["-pub_date"] verbose_name = "文章" verbose_name_plural = "文章"
class Article(models.Model): title = models.CharField(max_length=500) img = models.CharField( max_length=250, default= "https://qph.ec.quoracdn.net/main-qimg-016319d146ee93a464cb11870001b29c" ) cover = models.FileField(upload_to='cover_image', null=True) # content = models.TextField(null=True, blank=True) views = models.IntegerField(default=0) likes = models.IntegerField(default=0) createtime = models.DateField(auto_now_add=True, null=True) content = UEditorField('内容', height=300, width=1000, default=u'', blank=True, imagePath="uploads/images/", toolbars='besttome', filePath='uploads/files/') def __str__(self): return self.title
class Article(models.Model): column = models.ManyToManyField(Column, verbose_name='归属栏目') title = models.CharField('标题', max_length=256) slug = models.CharField('网址', max_length=256, db_index=True) author = models.ForeignKey('auth.User', blank=True, null=True, verbose_name='作者') # content = models.TextField('内容', default='', blank=True) content = UEditorField('内容', height=300, width=1000, default=u'', blank=True, imagePath="uploads/images/", toolbars='besttome', filePath='uploads/files/') pub_date = models.DateTimeField('发表时间', auto_now_add=True, editable=True) update_time = models.DateTimeField('更新时间', auto_now=True, null=True) published = models.BooleanField('正式发布', default=True) def __str__(self): return self.title class Meta: verbose_name = '教程' verbose_name_plural = '教程'
class ApplicationCate(models.Model): id = models.CharField(max_length=10, primary_key=True, verbose_name='分类ID(限英文字母)') name = models.CharField(max_length=50, verbose_name='应用领域名称') image = models.ImageField(upload_to='img/%Y/%m', verbose_name='应用领域图片') describe = models.TextField(max_length=511, verbose_name='描述') context = UEditorField(verbose_name='具体介绍', width=1000, height=500, imagePath="ueditor/", filePath="ueditor/", default='') created_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') last_modified_time = models.DateTimeField(auto_now=True, verbose_name='修改时间') class Meta: verbose_name = '应用领域' verbose_name_plural = verbose_name def __str__(self): return self.name
class Lesson(models.Model): # 因为一个课程对应很多章节。所以在章节表中将课程设置为外键。 # 作为一个字段来让我们可以知道这个章节对应那个课程 course = models.ForeignKey(Course, on_delete=models.CASCADE, verbose_name=u"课程") name = models.CharField(max_length=100, verbose_name=u"章节名") Lessondetail = UEditorField(verbose_name=u"章节正文", width=600, height=300, imagePath="Lesson/ueditor/", filePath="Lesson/ueditor/", default='') add_time = models.DateTimeField(default=datetime.now, verbose_name=u"添加时间") class Meta: verbose_name = u"章节" verbose_name_plural = verbose_name ordering = ['name'] def __str__(self): return '《{0}》课程的章节 >> {1}'.format(self.course, self.name)
class CourseOrg(models.Model): name = models.CharField(max_length=50, verbose_name=u"机构名称") desc = UEditorField(verbose_name=u"机构描述", width=900, height=300, imagePath="org/ueditor/", filePath="org/ueditor/", default='') tag = models.CharField(default="全国知名", max_length=10, verbose_name=u"机构标签") category = models.CharField(default="pxjg", verbose_name=u"机构类别", max_length=20, choices=(("pxjg", "培训机构"), ("gr", "个人"), ("gx", "高校"))) click_nums = models.IntegerField(default=0, verbose_name=u"点击数") fav_nums = models.IntegerField(default=0, verbose_name=u"收藏数") image = models.ImageField(upload_to="org/%Y/%m", verbose_name=u"logo", max_length=100) address = models.CharField(max_length=150, verbose_name=u"机构地址") city = models.ForeignKey(CityDict, verbose_name=u"所在城市", on_delete=models.CASCADE) students = models.IntegerField(default=0, verbose_name=u"学习人数") course_nums = models.IntegerField(default=0, verbose_name=u"课程数") add_time = models.DateTimeField(default=datetime.now) class Meta: verbose_name = u"课程机构" verbose_name_plural = verbose_name def get_teacher_nums(self): #获取课程机构的教师数量 return self.teacher_set.all().count() def __str__(self): return self.name
class Goods(models.Model): ''' 商品 ''' category = models.ForeignKey(GoodsCategory, verbose_name='商品类目') goods_sn = models.CharField(max_length=50, default='', verbose_name='商品唯一货号') name = models.CharField(max_length=300, verbose_name='商品名') click_num = models.IntegerField(default=0, verbose_name='点击数') sold_num = models.IntegerField(default=0, verbose_name='商品销售量') fav_num = models.IntegerField(default=0, verbose_name='收藏数') goods_num = models.IntegerField(default=0, verbose_name='库存数') market_price = models.FloatField(default=0, verbose_name='市场价格') shop_price = models.FloatField(default=0, verbose_name='本店价格') goods_brief = models.TextField(verbose_name='商品简短描述') goods_desc = UEditorField(verbose_name='内容', imagePath='goods/images/', width='100%', height=300) ship_free = models.BooleanField(default=False) # 商品封面图 goods_front_image = models.ImageField(upload_to="goods/images/", null=True, blank=True, verbose_name="封面图") # 商品是否新品 is_new = models.BooleanField(default=False, verbose_name='是否新品') is_hot = models.BooleanField(default=False, verbose_name='是否热销') add_time = models.DateTimeField(default=datetime.now, verbose_name='添加时间') class Meta: verbose_name = '商品' verbose_name_plural = verbose_name def __str__(self): return self.name
class CourseOrg(BaseModel): name = models.CharField(max_length=50, verbose_name="机构名称") desc = UEditorField(verbose_name="机构描述", width=600, height=300, imagePath="courses/ueditor/images/", filePath="courses/ueditor/files/", default="") tag = models.CharField(default="全国知名", max_length=10, verbose_name="机构标签") category = models.CharField(default="pxjg", verbose_name="机构类别", max_length=4, choices=(("pxjg", "培训机构"), ("gr", "个人"), ("gx", "高校"))) click_nums = models.IntegerField(default=0, verbose_name="点击数") fav_nums = models.IntegerField(default=0, verbose_name="收藏数") image = models.ImageField(upload_to="org/%Y/%m", verbose_name="logo", max_length=100) address = models.CharField(max_length=150, verbose_name="机构地址") students = models.IntegerField(default=0, verbose_name="学习人数") course_nums = models.IntegerField(default=0, verbose_name="课程数") is_auth = models.BooleanField(default=False, verbose_name="是否认证") is_gold = models.BooleanField(default=False, verbose_name="是否金牌") # 设置外键来方便后台添加城市 city = models.ForeignKey(City, on_delete=models.CASCADE, verbose_name="所在城市") def courses(self): # from apps.courses.models import Course # courses = Course.objects.filter(course_org=self) # return courses # 取出经典课程,只取出前3个 courses = self.course_set.filter(is_classics=True)[:3] return courses # def teachers(self): # return self.teacher_set.all().count() class Meta: verbose_name = "课程机构" verbose_name_plural = verbose_name def __str__(self): return self.name
class Goods(models.Model): """ 商品 """ category = models.ForeignKey(GoodsCategory, verbose_name="商品类目") goods_sn = models.CharField(max_length=50, default="", verbose_name="商品唯一货号") name = models.CharField(max_length=100, verbose_name="商品名") click_num = models.IntegerField(default=0, verbose_name="点击数") sold_num = models.IntegerField(default=0, verbose_name="商品销售量") fav_num = models.IntegerField(default=0, verbose_name="收藏数") goods_num = models.IntegerField(default=0, verbose_name="库存数") market_price = models.FloatField(default=0, verbose_name="市场价格") shop_price = models.FloatField(default=0, verbose_name="本店价格") goods_brief = models.TextField(max_length=500, verbose_name="商品简短描述") goods_desc = UEditorField(verbose_name=u"内容", imagePath="goods/images/", width=1000, height=300, filePath="goods/files/", default='') ship_free = models.BooleanField(default=True, verbose_name="是否承担运费") goods_front_image = models.ImageField(upload_to="goods/images/", null=True, blank=True, verbose_name="封面图") is_new = models.BooleanField(default=False, verbose_name="是否新品") is_hot = models.BooleanField(default=False, verbose_name="是否热销") add_time = models.DateTimeField(default=datetime.now, verbose_name="添加时间") class Meta: verbose_name = '商品' verbose_name_plural = verbose_name def __str__(self): return self.name
class Post(models.Model): ''' 文章 ''' title = models.CharField(max_length=50, verbose_name='标题') # body = models.TextField(verbose_name='主体') #富文本编辑内容: body = UEditorField(verbose_name='课程详情', width=600, height=300, toolbars="full", imagePath="blog/ueditor/", filePath="blog/ueditor/", upload_settings={"imageMaxSize": 1204000}, default='') create_time = models.DateTimeField(verbose_name='创建时间') modify_time = models.DateTimeField(verbose_name='修改时间') excerpt = models.CharField(max_length=200, blank=True, verbose_name='摘要') #blank=True 可以为空 category = models.ForeignKey(Category, on_delete='CASCADE', verbose_name='分类') tags = models.ManyToManyField(Tag, blank=True, verbose_name='标签') #ManyToManyField,多对多 author = models.ForeignKey(User, verbose_name='作者', blank=True, on_delete='CASCADE') class Meta: verbose_name = '文章' verbose_name_plural = verbose_name def __str__(self): return self.title
class GraphicArticle(models.Model): name = models.CharField('图文标题', max_length=256) graphic_column = models.ManyToManyField(GraphicColumn, verbose_name='图文') slug = models.CharField('图文网址', max_length=256, db_index=True) author = models.ForeignKey(User, on_delete=models.CASCADE, blank=True, null=True, verbose_name='作者') content = UEditorField('内容', height=300, width=1000, default=u'', blank=True, imagePath="uploads/images/", toolbars='besttome', filePath='uploads/files/') image = models.ImageField('封面', upload_to='image') register_date = models.DateTimeField('注册时间', auto_now_add=True, editable=True) update_date = models.DateTimeField('修改时间', auto_now_add=True, editable=True) published = models.BooleanField('正式发布', default=True) def __str__(self): return self.name class Meta: verbose_name = '图文类页面管理' verbose_name_plural = '图文类页面管理'
class Art(models.Model): a_title = models.CharField(max_length=255, verbose_name='文章标题') a_info = models.CharField(max_length=300, verbose_name='文章描述') # a_content = models.TextField(verbose_name='文章内容') a_content = UEditorField(verbose_name="文章内容", width=1000, height=600, imagePath="arts_ups/ueditor/", filePath="arts_ups/ueditor/", blank=True, toolbars="full", default='') a_img = models.ImageField(null=True, blank=True, upload_to="arts_ups/%Y/%m", verbose_name='封面') a_createtime = models.DateTimeField(default=timezone.now, db_index=True, verbose_name='创建时间') a_updatetime = models.DateTimeField(default=timezone.now, verbose_name='更新时间') a_tag = models.ForeignKey(to=Tag, verbose_name='关联标签') a_price = models.IntegerField(default=0, verbose_name='单价') a_flag = models.IntegerField(default=0, verbose_name='控制字段', choices=FLAGS_CHOICES) operator = models.ForeignKey('auth.User', default=1, verbose_name='api操作者') def __str__(self): return self.a_title class Meta: verbose_name_plural = '文章' db_table = 'art' ordering = ['-a_createtime'] # 按照创建时间降序
class Course(BaseModel): teacher = models.ForeignKey(Teacher, on_delete=models.CASCADE, verbose_name="讲师") course_org = models.ForeignKey(CourseOrg,null=True ,blank=True, on_delete=models.CASCADE, verbose_name="课程机构") name = models.CharField(verbose_name="课程名", max_length=50) desc = models.CharField(verbose_name="课程描述", max_length=300) learn_times = models.IntegerField(default=0, verbose_name="学习时长(分钟数)") degree = models.CharField(verbose_name="难度", choices=(("cj", "初级"), ("zj", "中级"), ("gj", "高级")), max_length=2) students = models.IntegerField(default=0, verbose_name='学习人数') fav_nums = models.IntegerField(default=0, verbose_name='收藏人数') click_nums = models.IntegerField(default=0, verbose_name="点击数") notice = models.CharField(verbose_name="课程公告", max_length=300, default="") category = models.CharField(default="后端开发", max_length=20, verbose_name="课程类别") tag = models.CharField(default="", verbose_name="课程标签", max_length=10) youneed_know = models.CharField(default="", max_length=300, verbose_name="课程须知") teacher_tell = models.CharField(default="", max_length=300, verbose_name="老师告诉你") is_classics = models.BooleanField(default=False, verbose_name="是否经典") detail = UEditorField(verbose_name="课程详情", width=600, height=300, imagePath="courses/ueditor/images", filePath="courses/ueditor/files/", default="") image = models.ImageField(upload_to="courses/%Y/%m", verbose_name="封面图", max_length=100) is_banner = models.BooleanField(default=False, verbose_name="是否广告位") class Meta: verbose_name = "课程信息" verbose_name_plural = verbose_name def __str__(self): return self.name # def show_image(self): # from django.utils.safestring import mark_safe # return mark_safe("<img src = '{}'>".format(self.image.url)) # show_image.short_description = "图片" def go_to(self): from django.utils.safestring import mark_safe return mark_safe("<a href = '/course/{}'>跳转</a>".format(self.id)) go_to.short_description = "跳转" def lesson_nums(self): return self.lesson_set.all().count()
class Magearticle(models.Model): magacolumn = models.ForeignKey(Magaclass, verbose_name='所属杂志') column = models.CharField('动态', default='dongtai', max_length=10, editable=False) title = models.CharField('标题', max_length=40) source = models.CharField('来源', max_length=20) author = models.CharField('作者', max_length=20) browser = models.IntegerField('浏览量', default=0, editable=False) keyword = models.CharField('关键词', max_length=30, blank=True) tag = models.CharField('标签', max_length=30, blank=True) picurl = models.ImageField('封面图片', upload_to="uploads/images/article/") content = models.TextField('内容', default='', blank=True) content = UEditorField('内容', height=300, width=700, default=u'', blank=True, imagePath="uploads/images/article/", toolbars='besttome', filePath='uploads/files/article/') weici = models.BooleanField('固定位次', default=False) weizhi = models.IntegerField('位次', unique=True, null=True, blank=True) pub_date = models.DateTimeField('发表时间', auto_now_add=True, editable=True) update_time = models.DateTimeField('更新时间', auto_now=True, null=True) published = models.BooleanField('正式发布', default=True) #def get_absolute_url(self): # return reverse('infoarticle', args=(self.pk, self.slug)) def __str__(self): return self.title class Meta: verbose_name = '动态' verbose_name_plural = '动态'