我有2次下降。
首先下拉询问类型。
我有第二个下拉列表显示另一个模型的值。
我需要的是,如果第一个下拉作为类型:qualif,我只想显示第二个下拉列表的pk = 1。
这是我到目前为止所做的:
name = models.CharField(max_length=40,verbose_name="nom")
type = models.CharField(max_length=6,choices=TYPE_CHOICES)
division = models.ForeignKey(Division,verbose_name="division")
class TournamentForm(forms.ModelForm):
def clean(self):
super(TournamentForm, self).clean() #if necessary
if 'division' in self._errors:
"""
reset the value (something like this i
think to set the value b/c it doesnt get set
b/c the field fails validation initially)
"""
if self.data['type'] == 'qualif':
division = Division.objects.get(pk=1)
self.division = division
# remove the error
del self._errors['division']
return self.cleaned_data
# Register your models here.
class TournamentAdmin(reversion.VersionAdmin):
form = TournamentForm
list_display = ('name', 'date', 'division', 'gender')
ordering = ('date', 'name')
list_filter = ['date', 'season', 'division', 'gender']
admin.site.register(Tournament, TournamentAdmin)
我从另一个堆栈问题中读到要使用干净......但遗憾的是它不起作用......
编辑: 在查看@Mardo的链接后,我尝试加载一个静态文件。
这是我的文件夹设置:
myproject的/静态/管理/ JS / myfile.js
这在我的settings.py
中STATIC_URL ='/ static /'
但它一直说文件没找到......
谢谢, ARA
答案 0 :(得分:0)
制作两个表格。首先只有第一次下拉,第二次是禁用。选择值提交表单并基于第一个呈现完整版本。