Я недавно прошел курс Net Ninja Django и решил сделать небольшой проект, чтобы в качестве самообучения я пытался создать веб-приложение, которое будет получать показания счетчиков для разных систем (1 - 10).
Не похоже, что имеет смысл создавать функцию для каждой Системы в моем файле Views и снова создавать форму для каждой из них в моем файле Forms, но я не могу думать о какой-либо Другой способ сделать это.
Это функция Views, моя логика c - вы передаете класс модели в функцию view, которая вызывает функцию формы с переданным классом модели.
def fuelLogSystemOne(request, x):
entries = FuelLogSystemOne.objects.all().order_by('date')
if request.method == 'POST':
form = forms.AddFuelLogOne(request.POST, x)
if form.is_valid():
instance = form.save(commit=False)
instance.staff = request.user
instance.save()
return redirect('home')
else:
form = forms.AddFuelLogOne()
return render(request,'systems/fuellogsystemone.html',{'form':form,'entry':entries})
в моем файле форм:
class AddFuelLogOne(forms.ModelForm,x):
class Meta():
model = models.x
fields = ['BucketsAdded']
Моя логика c такова, что вы передадите необходимую модель при вызове fuelsystemLogOne ()
Но когда я выполняю миграции Я получаю сообщение о том, что x не определен.