當我創建模型時,如何確保用戶可以被選為我登錄的用戶?model.pyclass Advertise(models.Model): owner = models.ForeignKey(User, on_delete=models.CASCADE, null=True) title = models.CharField(max_length=100, verbose_name="ilan ba?l???") description = models.TextField(max_length=500, verbose_name="ilan a??klamas?")查看.py##class advertise(CreateAPIView): serializer_class = AdvertiseMainSerializer queryset = Advertise.objects.all()序列化器py##class AdvertiseMainSerializer(ModelSerializer): class Meta: model = Advertise fields = '__all__'
1 回答

天涯盡頭無女友
TA貢獻1831條經驗 獲得超9個贊
覆蓋perform_create(...)方法
class AdvertiseCreateAPIView(CreateAPIView):
serializer_class = AdvertiseMainSerializer
queryset = Advertise.objects.all()
def perform_create(self, serializer):
serializer.save(owner=self.request.user)
筆記:
我已將類名更改advertise為,因為根據PEP8AdvertiseCreateAPIView指南,類名通常應使用CapWords約定。
添加回答
舉報
0/150
提交
取消