问题描述
我正在尝试对我的博客实施评论系统,但是在尝试将content_type
分配给与评论相关的初始数据时遇到错误。我的样本代码如下
python == 3.8 django == 3.1.1
#Comment app model
class Comment(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
content_type = models.ForeignKey(ContentType,on_delete=models.CASCADE)
object_id = models.PositiveIntegerField()
content_object = GenericForeignKey()
parent = models.ForeignKey("self",null=True,blank=True,on_delete=models.CASCADE)
content = RichTextField()
#Blog app model
class Song(models.Model):
...
...
@property
def get_content_type(self):
content_type = ContentType.objects.get_for_model(self.__class__)
return content_type
#Blog Views
class SongDetail(ModelFormMixin,DetailView):
model = Song
form_class = CommentsForm
def get_initial(self):
obj = self.get_object()
return { 'content_type': obj.get_content_type,'object_id': obj.object_id }
def post(self,request,*args,**kwargs):
if not request.user.is_authenticated:
return redirect('music:obj.get_absolute_url()')
form = self.get_form()
if form.is_valid():
return self.form_valid(form)
else:
return self.form_invalid(form)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)