[英]Django: model foreign key and a selectbox widget
我有2個模型Worker
和Position
當我添加一個新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.