繁体   English   中英

Django:模型外键和一个selectbox小部件

[英]Django: model foreign key and a selectbox widget

我有2个模型WorkerPosition当我添加一个新worker时,应该有selectbox,其位置在Positions模型中列出。

我尝试使用“ Select小部件,但django失败, no such property异常。

楷模


# Position model
class Position(models.Model):
    p_name   = models.CharField(max_length = 40, unique = True, verbose_name = 'Position')
    p_salary = models.IntegerField(max_length = 11, verbose_name = 'Salary')

    fields = ('p_name', 'p_salary')

# Worker model
class Worker(models.Model):
    w_name     = models.CharField(max_length = 40, verbose_name = 'Name')
    w_lastname = models.CharField(max_length = 40, verbose_name = 'Lastname')
    w_position = models.ForeignKey(to = Position, to_field = 'p_name', verbose_name = 'Position')
    w_dept     = models.ForeignKey(to = Department, to_field = 'd_name' verbose_name = 'Department')

形成


class WorkerForm(ModelForm):
    class Meta:
        model = Worker

        widgets = {
            'w_name'    : TextInput(attrs = {'class': 'e name'}),
            'w_lastame' : TextInput(attrs = {'class': 'e lastname'}),
            'w_position': Select(attrs = {'class': 'e position'}),
            'w_dept'    : Select(attrs = {'class': 'e department'}),
        }

admin.py中的定义


class WorkerAdmin(admin.ModelAdmin):
    form = WorkerForm

list_display = ('w_name', 'w_lastname', 'w_position', 'w_dept')

怎么根据外键使选择框出现问题?

苏丹

您可以尝试在表单内重新声明表单的字段(确保使用与Model中相同的名称),然后在其中设置小部件和属性?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM