【发布时间】:2014-09-26 11:22:36
【问题描述】:
我正在使用django-salesforce,我想在 Django 中创建一个模型,该模型具有指向 SFDC 模型(托管在 force.com 上)的 ForeignKey 字段。
我在 force.com 上创建了一个自定义模型,我们称之为 SFModel,我可以通过子类化 salesforce.models.Model 从 django (CRUD) 成功地处理它。
我还创建了一个django.db.models.Model,我们称之为DJModel,它有一个独特的字段ForeignKey(SFModel)。此模型已在管理面板上注册。
所有模型都经过验证,我可以去我的管理面板尝试创建DJModel 的新实例。但是,当我尝试在管理员中显示 create_form 时,出现以下错误:
hasattr(): attribute name must be string
调试流说
所以我尝试为我的settings.py 的DATABASES 中的SF 条目设置一个任意别名。有一个专用变量:
SALESFORCE_DB_ALIAS = 'youralias'
但我还是有同样的问题。
有什么推荐吗?
【问题讨论】:
-
它类似于 Django 中对多个数据库的支持,具有 Postgres 或 MySQL 等标准后端。您不能创建 ForeignKey 例如从 Postgres 到 MySQL。即使是同一类型的不同不同数据库之间的 ForeignKeys 也无法创建。我推荐类似于GenericForeignKey 的东西。如果您找到适用于两个标准数据库的解决方案,我可以帮助您找到适用于标准数据库和 Salesforce 的解决方案。
-
我建议关闭这个问题,因为它是 Django 不支持的功能,在当前版本或当时使用的版本上都不能复制,目前已过时。
标签: django salesforce django-salesforce