Найти - Пользователи
Полная версия: сохранить поле в представление классе
Начало » Django » сохранить поле в представление классе
1
django2014
Как подредактировать значение некоторого поля при обработке формы в представление-классе UpdateView?
class MyUpdate(UpdateView):
    model =MyModel
    fields = [ 'f1', 'f2' ]
Нужно всегда при обновлении уставливать некоторое значение для поля f3, например f3=0. При этом поле f3 не доступно пользователю.

какой из методов я должен выбрать:
as_view()
dispatch()
form_invalid()
form_valid()
get()
get_context_data()
get_form()
get_form_kwargs()
get_object()
head()
http_method_not_allowed()
post()
put()
render_to_response()
?

может пример имеется?

Singularity
django2014
ти повинен зробити modelform де вкажеш які поля редагувати і цю форму передати в updateview
django2014
Singularity
django2014ти повинен зробити modelform де вкажеш які поля редагувати і цю форму передати в updateview
Извиняюсь, но я не понял зачем мне делать modelform? Я указываю в представлении классе те, поля, к-е передаются в форму и обрабатываются. И не знаю, как мне скрыто сохраниять значение в некоторое поле, к-е не отображается для пользователя, но существует.
Singularity
django2014
якщо треба щоб данні були в формі видні то
def get_initial(self):
    return { 'f': 0 }
# так ще спробуй
initial = { 'value1': 'foo', 'value2': 'bar' }
якшо ні то просто в def clean() пишеш шо тобі там треба
django2014
Singularity
def get_initial(self): return { ‘f’: 0 } # так ще спробуй initial = { ‘value1’: ‘foo’, ‘value2’: ‘bar’ }

я form_valid переопределил, все работает.

This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB