Django模型根据BooleanField生成易于编辑的响应

时间:2015-07-26 10:47:04

标签: python django django-models

我正在编写网页,人们可以在其中添加他们的客户,例如地址簿,他们可以检查他们添加的客户是否需要选项nr 1或nr 2或两者并且我希望django生成如果选中选项1或两者或两者,则链接,包括URL地址PLUS作者" subid"。这是一个棘手的部分:URL地址(我希望django生成的链接的第一部分)需要很容易更改,最好是在django-admin页面。

示例:

马克,其子公司cli30添加了一个客户谁想要选项1和2所以我想保存在数据库中除了客户个人信息两个链接:option1 / abc_cli30(option1 / abc_ + cli30)AND option2 / abc_cli30(option2 / abc_ + cli30)。然后,当其他人用" subid" cli22添加了另一个只想要选项1的客户端,所以我只需要生成option1 / abc_cli22。然后在例如一个月之后,如果有人添加了新客户端,我希望django生成opt1.com/cli30。

以下是models.py:

的相关部分
class Clients(links):
    company_name = models.CharField(max_length=200, blank=False, default=" ")  #personal info about client
    email = models.EmailField(max_length=200, blank=False, default=" ")
    phone_number = models.CharField(max_length=200, blank=False, default=" ")
    added = models.DateTimeField(auto_now_add=True)
    option1 = models.BooleanField(default=False)  #checkbox for option1
    option2 = models.BooleanField(default=False)  #chockbox for option2
    who_added = models.ForeignKey(User, null=True, blank=True)  # here is the author who added client
    link_opt1= models.OneToOneField(links)
    link_opt2 = models.OneToOneField(links)

class Links(models.Model):
    link_opt1= models.CharField(option1.com)   # here are the first parts of links i need to generate
    link_opt2= models.CharField(option2.com)

    class Meta:
        abstract = True'

正如您所看到的,我已经尝试制作一个抽象类,然后Client类将继承此类,但是Links类中的链接不容易更改。

然后我尝试使用OneToOne关系并使用" subid"保存最终链接。在views.py中的Client类中,但我无法以正确的方式进行。还考虑在admin页面中创建Queryset,它会过滤选项1或选项2的所有对象,然后根据Links类中的当前链接和添加生成正确链接的作者,这似乎是最佳选择,但这也是最难做的事。

你可以帮我写一下吗?任何建议都会非常有用!

0 个答案:

没有答案
相关问题