问题描述
我是 Django 的初学者。我想添加一些帖子和评论,但出现完整性错误。 没有评论模型,它以前可以工作,但不能一起工作。我已经删除了我的数据库并进行了迁移,然后再次迁移。
后期模特
from django.db import models
from django.conf import settings
# from django.contrib.auth import get_user_model
# User = get_user_model()
# Create your models here.
class Post(models.Model):
user = models.ForeignKey(
#to=User,to=settings.AUTH_USER_MODEL,on_delete=models.CASCADE,related_name='posts',null=True
)
content = models.CharField(
max_length=150,blank=False
)
created = models.DateTimeField(
auto_now=True
)
liked_by = models.ManyToManyField(
#to=User,related_name='liked_posts',blank=True
)
后序列化器
from rest_framework import serializers
from .models import Post
from ..comment.serializers import CommentSerializer
class PostSerializer(serializers.ModelSerializer):
class Meta:
model = Post
comments = CommentSerializer(source='comments.content')
fields = [
'id','user','content','comments','created','liked_by',]
comment.models
from django.db import models
from django.conf import settings
from apps.post.models import Post
# Create your models here.
class Comment(models.Model):
user = models.ForeignKey(to=settings.AUTH_USER_MODEL,related_name='comment',null=True)
post = models.ForeignKey(to=Post,on_delete=models.SET_NULL,null=True)
content = models.CharField(max_length=150)
created = models.DateTimeField(auto_now_add=True)
def __str__(self):
return f'Comment by: {self.user}'
注释序列化器
from rest_framework import serializers
from .models import Comment
class CommentSerializer(serializers.ModelSerializer):
class Meta:
model = Comment
fields = ['id','post','created']
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)