簡體   English   中英

如何在 Django 模型中添加變量

[英]How to add variable in Django model

我想在 Django 模型中添加變量,但我不想在調用端點時將此變量返回給用戶的同時將其保存到數據庫中。

這是我在網上找到的,但問題是變量沒有重新運行給用戶

class User (models.Model):
   f_name = models.CharField(max_length=255)
   l_name = models.CharField(max_length=300)
   full_name = ''

當用戶調用 api 時如何重新運行 full_name 給用戶?

如果這是使用 Django Rest Framework,我不知道您的代碼是如何設置的,但您需要擴展您的序列化程序:

向序列化程序添加一個新字段: full_name = serializers.SerializerMethodField()

向序列化程序添加一個方法:

def get_full_name(self, obj):
    return "{} {}".format(obj.first_name, obj.last_name)

注意:有不同的方式加入這些串在一起,用大量的@property在你的模型,fstrings等-由你來選擇最適合您的需要(沒有看到你的代碼的其余部分()

您可以定義模型的property

class User (models.Model):
   f_name = models.CharField(max_length=255)
   l_name = models.CharField(max_length=300)

   @property
   def full_name(self):
       return self.f_name + self.l_name

現在您使用full_name與普通屬性user.full_name相同的方式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM