从创建的记录创建时,默认DJANGO字段值



我有People应用程序。我有具有username字段的Person型号。当我添加一个人并且该人还没有帐户时,我单击username字段旁边的Little Plus符号,并向我提供了新的用户表格。

没关系。

现在,我想以这种方式创建用户:用户名应该是约翰·史密斯(John Smith)具有用户名john.smith{firstname}.{lastname}[.{serial}] FO的形式,另一个John Smith将是john.smith.1

如何将一个名称和最后一个名称传递给新用户表格?另外:如何检查其他用户名是否有其他用户并将序列号附加到其中?

谢谢

如果在"人"表单上输入了第一个和姓氏(但尚未提交),并且您希望这些值在新的用户表单视图中显示,那么您将必须:

a)使用javascript抓住名字和姓氏时,当用户命中该添加按钮(" plus"按钮"),然后
b)将这些值传递到动态创建{firstName}的自定义视图中。{lastName}。[serial],然后
c)将该值分配给Form.Fields ['username']。初始

当用户看到下一张表单时,他们将具有您预先填充的值。此逻辑可能应该以自定义表单方法进行(以管理用户名为准)。

此策略提出了您必须解决的其他问题:
1)如果用户在提交之前更改原始人员表格中的名字和姓氏怎么办?(下面的#2可能会解决此问题)
2)每次更改名字或姓氏时,您都必须在其他模型上更新用户名

其他要考虑的事情:

您可以使用自定义用户模型(文档,教程)来执行此操作,并将这些名称和姓氏放在同一模型中,这可以消除自定义视图创建,允许您在一个页面中动态创建用户名,然后使它们更容易同步。

相关内容

  • 没有找到相关文章

最新更新