我正在尝试将M2M字段修改为ForeignKey字段.命令validate显示没有问题,当我运行syncdb时:
ValueError: Cannot alter field xxx into yyy they are not compatible types (you cannot alter to or from M2M fields, or add or remove through= on M2M fields)
Run Code Online (Sandbox Code Playgroud)
所以我无法进行迁移.
class InstituteStaff(Person):
user = models.OneToOneField(User, blank=True, null=True)
investigation_area = models.ManyToManyField(InvestigationArea, blank=True,)
investigation_group = models.ManyToManyField(InvestigationGroup, blank=True)
council_group = models.ForeignKey(CouncilGroup, null=True, blank=True)
#profiles = models.ManyToManyField(Profiles, null = True, blank = True)
profiles = models.ForeignKey(Profiles, null = True, blank = True)
Run Code Online (Sandbox Code Playgroud)
这是我的第一个Django项目,所以欢迎任何建议.
我需要在内联之前在管理界面中添加一个按钮.我所做的是在change_form中添加以下内容:
{% block after_field_sets %}
<input type="button" value="Add contract" onClick=" window.location.href='../../contract/add/' ">
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
但是......现在,按钮显示在管理界面的每个模型页面中,而不仅仅是在内联页面中.
有什么建议吗?
我在R中有以下功能来生成10个随机抽奖号码:
sprintf("%05d", sort(sample(0:99999, 10)))
Run Code Online (Sandbox Code Playgroud)
输出:
"00582" "01287" "01963" "10403" "13274" "17705" "23798" "32808" "33668" "35794"
Run Code Online (Sandbox Code Playgroud)
我已经将它转换为Python,如下所示:
print(sorted(sample(range(99999), 10)))
Run Code Online (Sandbox Code Playgroud)
输出:
[208, 10724, 12078, 27425, 34903, 49666, 60057, 67482, 68730, 78811]
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,我获得5位数字,而在第二种情况下,数字最多可以有5位数,但也可以更少.
那么,有没有类似的方法来获得5位数字的列表(或第一种情况下的字符串)?
假设我有这段代码:
fields = ['a', 'b', 'c']
for field in fields:
d.pop(field)
d.append(field - 1) # Incorrect
Run Code Online (Sandbox Code Playgroud)
在错误的行中,如果我们处于第二次迭代('b'),如何引用最后一个('a')?