モデルシリアライザで現在のユーザを取得できますか?私はジェネリック医薬品から枝分かれすることなくそうしたいと思っています。そうしなければならない単純な作業ですから。モデルシリアライザで現在のユーザを取得
マイモデル:
class Activity(models.Model):
number = models.PositiveIntegerField(
blank=True, null=True, help_text="Activity number. For record keeping only.")
instructions = models.TextField()
difficulty = models.ForeignKey(Difficulty)
categories = models.ManyToManyField(Category)
boosters = models.ManyToManyField(Booster)
class Meta():
verbose_name_plural = "Activities"
マイシリアライザ:
class ActivitySerializer(serializers.ModelSerializer):
class Meta:
model = Activity
そして、私の意見:私は、このようなこと追加フィールドuser
で、モデルが返さ取得できますか
class ActivityDetail(generics.RetrieveUpdateDestroyAPIView):
queryset = Activity.objects.all()
serializer_class = ActivityDetailSerializer
私の反応は次のようになります:
{
"id": 1,
"difficulty": 1,
"categories": [
1
],
"boosters": [
1
],
"current_user": 1 //Current authenticated user here
}
どのようにその変数にアクセスしますか?私は同様に私を設定しているが、create()メソッドでは変数にアクセスできないようだ。リクエストにも含まれていません.POST。 – Craig
Iをコード上に使用されるが、次のエラーを_user ユーザ= self.contextで ファイル "/Users/abc/abc/Django/Work/abc/abc/src/MadhaparGamApps/serializers/newsfeedSerializer.py"、ライン21を与えます[Request '] user KeyError:' request ' –
リクエストを受け取ったすべてのユーザーKeyError:これは、次のようにリクエストオブジェクトでビューからシリアライザを初期化することによって解決できます。serializer = serializers.RandomSerializer(data = request.data、context = {'request':request}) ソース:http://www.django-rest-framework.org/api-guide/serializers/#saving-instances –