coercing to Unicode: need string or buffer, NoneType found
我搭建的博客在添加文章的时候网页报错:TypeError at /admin/blog/article/add/ coercing to Unicode: need string or buffer, NoneType found 然而我在添加分类的时候是正常可操作的。希望能得到帮助和指导。谢谢! 代码如下:
class CategoryManager(models.Manager): # 1、读取分类及此分类文章数 def Category_articlennum_list(self): Category_articlennum_list = self.annotate(articlennum=Count('article__category')).order_by('-articlennum') return Category_articlennum_list # 分类 class Category(models.Model): name = models.CharField(max_length=30, verbose_name=u'分类名称') index = models.IntegerField(default=999,verbose_name=u'分类的排序') pid = models.ForeignKey('self', blank=True, null=True, verbose_name=u'父级分类') ptype = models.CharField(max_length=30, verbose_name=u'平台类型') desc = models.CharField(max_length=200, null=True, blank=True,verbose_name=u'描述') objects = CategoryManager() class Meta: verbose_name = u'分类' verbose_name_plural = verbose_name ordering = ['index', 'id'] def __unicode__(self): return self.name class ArticleManager(models.Manager): # 1、归档数据 def distinct_date(self): yearmonth = {"date_publish": """date_format(date_publish,'%%Y-%%m')"""} distinct_date_list = self.extra(select=yearmonth).values('date_publish').annotate(num=Count('id')) # SELECT (date_format(date_publish,'%Y-%m')) AS `date_publish`, COUNT(`blogs_article`.`id`) AS `num` FROM `blogs_article` # WHERE `blogs_article`.`user_id` = 1 GROUP BY (date_format(date_publish,'%Y-%m')) ORDER BY NULL print distinct_date_list.query return distinct_date_list # 2、阅读排行,取前6 def topview_article_list(self): topview_article_list = self.order_by("-click_count")[:6] return topview_article_list # 3、推荐排行,取前6 def toprecommend_article_list(self): toprecommend_article_list = self.filter(is_recommend=1).order_by("date_publish")[:6] return toprecommend_article_list # 4、根据标签取文章列表 def tag_article_list(self, stag): tag_article_list = self.filter(tag='stag') return tag_article_list # 文章模型 #@python_2_unicode_compatible class Article(models.Model): title = models.CharField(max_length=50,default=u'标题', verbose_name=u'文章标题') desc = models.CharField(max_length=250, verbose_name=u'文章描述') content = UEditorField(verbose_name=u'文章内容') is_recommend = models.BooleanField(default=False, verbose_name=u'是否推荐') date_publish = models.DateTimeField(auto_now_add=True, verbose_name=u'发布时间') user = models.ForeignKey(BlogUser, verbose_name=u'用户') category = models.ForeignKey(Category, blank=True, null=True, verbose_name=u'分类') tag = models.ManyToManyField(Tag, verbose_name=u'标签') is_selfw = models.BooleanField(default=False, verbose_name=u'是否原创') is_top = models.BooleanField(default=False, verbose_name=u'是否置顶') is_display = models.BooleanField(default=True, verbose_name=u'是否显示') click_count = models.IntegerField(default=0, verbose_name=u'点击次数') praise_count = models.IntegerField(default=0, verbose_name=u'赞次数') bury_count = models.IntegerField(default=0, verbose_name=u'反对次数') reply_count = models.IntegerField(default=0, verbose_name=u'回复次数') img = models.ImageField(upload_to='ar/%Y/%m',blank=True, null=True, verbose_name=u'图片路径') objects = ArticleManager() class Meta: verbose_name = u'文章' verbose_name_plural = verbose_name # ordering = ['-date_publish'] def __unicode__(self): return str(self.title)
评论 0