返回一个不存在Tastypie使用的模型

时间:2014-04-10 04:31:01

标签: django tastypie

我有一个包含许多设置的模型:

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请求时没有设置还存在吗?

1 个答案:

答案 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