我有两个模型,其中一个(()
)有两个指向var authItem: AuthorizationItem = AuthorizationItem(name: kAuthorizationRightExecute, valueLength: 0, value: nil, flags: 0)
var authRights: AuthorizationRights = AuthorizationRights(count: 1, items: &authItem)
let authFlags: AuthorizationFlags = AuthorizationFlags.ExtendRights
var result = false
var authRef: AuthorizationRef = nil
let status: OSStatus = AuthorizationCreate(&authRights, nil, authFlags, &authRef)
if status == errAuthorizationSuccess {
result = SMJobBless(kSMDomainSystemLaunchd, "**helperBundleIdentifier**", authRef, nil)
}
的M2M关系。
Bar
使用Django 1.8设置项目后,这些字段都没有Foo
方法,如下所示。
class Foo(Model):
pass # Whatever
class Bar(Model):
foos = ManyToManyField(
Foo, blank=True, related_name="+")
bazs = ManyToManyField(
Foo, blank=True, related_name="+")
.add()
的文档是here。
In [1]: foo = Foo.objects.first()
Out[2]: <Foo: ...>
In [3]: bar = Bar.objects.first()
Out[4]: <Bar: ...>
In [8]: bar.foos.add(foo)
In [9]: bar.foos.all()
Out[9]: []
In [11]: bar.save()
In [12]: bar.foos.all()
Out[12]: []
的文档是here。
使用它是因为ManyToManyField
的反向related_names会在related_name
上发生冲突。
建议的解决方法是什么?
答案 0 :(得分:1)
我同意Gocht的观点,即它很可能与具有相同值的related_name属性有关。根据您的评论,您似乎在寻找ForeignKey字段而不是ManyToManyField。如果你只想要从Bar到Foo的单向关系,这将是最好的选择。
还有其他原因你没有使用那种类型的领域吗?
评论你的评论还不够,否则我会把它放在那里。 :(