Django学习笔记:为Model添加Action

|- Django版本:1.8

|- Python版本:3.4

models.py

1
class Story(models.Model): 2 3 #编辑Story状态 4 STATUS_CHOICES = ( 5 (1, '待编辑状态'), 6 (2, '待批准状态'), 7 (3, '已发布状态'), 8 (4, '已存档'), 9 ) 10 11 12 title = models.CharField(max_length=100, verbose_name=u'文章') 13 slug = models.SlugField(verbose_name=u'简短标题') 14 category =models.ForeignKey(Category, verbose_name=u'分类') 15 owner = models.ForeignKey(User, verbose_name=u'发布者') 16 status = models.IntegerField(choices=STATUS_CHOICES, default=1, verbose_name=u'发布状态') 17 18 19 class Meta: 20 ordering = ['modified','created'] 21 verbose_name_plural = verbose_name = '文章' 22 23 24 def __str__(self): 25 return self.title
admin.py

1
class StoryAdmin(admin.ModelAdmin): 2 list_display = ('title', 'owner', 'status', 'created', 'modified','read_times','top', 'id') 3 search_fields = ('title', 'markdown_content') 4 # 状态选择器 5 list_filter = ('status', 'owner', 'created', 'modified',) 6 prepopulated_fields = {'slug': ('title',)} 7 actions = ['make_story_public'] 8 9 def make_story_public(self, request, queryset): 10 # queryset参数为选中的Story对象 11 rows_updated = queryset.update(status=3) 12 message_bit = "%s 篇文章" % rows_updated 13 self.message_user(request, "%s 已成功标记为已发布状态." % message_bit) 14 make_story_public.short_description = u'修改选中文章为已发布状态'

 

转载于:https://www.cnblogs.com/Lands-ljk/p/5589157.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值