私信  •  关注

Charnel

Charnel 最近创建的主题
Charnel 最近回复了
5 年前
回复了 Charnel 创建的主题 » Django-models-访问类中字段的值

回答你的第二个问题-你所说的“数字限制”并不明显。如果您有兴趣防止该值超出定义的范围,则可以使用 validators

from django.core.validators import MaxValueValidator, MinValueValidator

class Tag(models.Model):
    '''Items have tag will have according discount percentage'''
    tag_discount_percentage = models.IntegerField(default=0, validators=[MinValueValidator(1), MaxValueValidator(100)])

否则,如果要限制小数位数,则应使用 decimal 字段而不是整数。

default agrument可以是一个可调用的,但不需要引用它所用于的对象。你可以考虑使用 pre_save 而是发出信号,根据其他字段“默认”设置字段值。

5 年前
回复了 Charnel 创建的主题 » 如何在Django中测试create函数?

如果表单无效,它只是在页面上重新呈现表单-这将生成状态200,而不是302。另外,在表单无效的情况下,不清楚为什么要发送重定向状态。

form errors 在你的模板中。或者,如果你认为在你的情况下重定向是一个更好的选择,如果 is_valid() redirect .

5 年前
回复了 Charnel 创建的主题 » 如何在Django中内部联接4个表?

你可以用 prefetch_related 对此,如评论中所述:

Manufacturer.objects.all().prefetch_related('related_name2', 'related_name3', 'related_name4')

实际上,这不会执行SQL内部连接,而是在Python级别连接预取对象-这将减少使用相关对象字段时对DB的命中率。

6 年前
回复了 Charnel 创建的主题 » 如何在Python中将ByteArray[]转换为int16?

如果您需要处理自定义的int16数据类型,我想您需要使用 numpy.array 像这样(未选中):

import numpy as np
# read file or stream in binary mode into a bin_array list
...
# convert binnary input values to numpy array with container type int16
np.array([v for v in bin_array], dtype=np.int16)