这是我到目前为止所拥有的。
models.py
class Company(models.Model):
company_name = models.CharField('Company', max_length=40, unique=True)
company_type = models.CharField('Type', max_length=20, null=True, blank=True)
class MyUser(AbstractBaseUser):
email = models.EmailField(max_length=80, unique=True)
first_name = models.CharField('First Name', max_length=25)
last_name = models.CharField('Last Name', max_length=25)
company = models.ForeignKey(Company,limit_choices_to *********
class Organization(models.Model):
owner = models.ForeignKey(Company, null=True, related_name='owner')
client = models.ForeignKey(Company, null=True, related_name='client')
我希望当前用户(已登录的用户)为作为其公司客户的公司创建用户。
所以,我的猜测是
MyCompany = request.user.company
company = models.ForeignKey(Company, limit_choices_to=(Organization__owner="MyCompany"))
任何帮助是极大的赞赏。
提前致谢。
最佳答案
无法使用limit_choices_to
在数据库级别动态定义它。您只需要在表单/视图等上定义它即可。即使用modelchoicefield。
关于python - 根据跨关系的查找将选择限制为外键,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32405117/