我有一个包含许多设置的模型:
class SettingsProfile(models.Model):
video_enabled = BooleanField()
audio_enabled = BooleanField()
sensors_enabled = BooleanField()
reporting Enabled = BooleanField()
如果用户已经创建了一个SettingsProfile模型,那么一切都很好,我们可以查询/ v1 / settingsprofiles / endpoint并获得我们需要的东西。
但是,如果不存在与我的查询匹配的设置配置文件(给定用户尚未创建它),我想返回一个设置了一些默认设置的SettingsProfile资源。请注意,我不想在数据库中创建一个SettingsProfile行,我只想显示一个类似于SettingsProfile资源的LOOKS,但实际上只是显示了一些默认值。
是否有某种方法可以让Django创建看起来像模型的东西,但尚未保存到数据库中并让Tastypie使用它来为客户端提供GET请求时没有设置还存在吗?
答案 0 :(得分:0)
class SettingsProfile(models.Model):
video_enabled = BooleanField(default=True)
audio_enabled = BooleanField(default=False)
sensors_enabled = BooleanField(default=True)
reporting_enabled = BooleanField(default=False)
try:
settings_profile = SettingsProfile.objects.get(user=user)
except SettingsProfile.DoesNotExist:
settings_profile = SettingsProfile() # A new one with default values