Size: a a a

Django [ru] #STAY HOME

2021 March 26

T

Tim in Django [ru] #STAY HOME
anton000v
есть поле нейм у одной модели и есть поле нейм у другой, обе обслуживаются одной вьюшкой в одной хтмл форме, логика у разраба видимо была в то, что каждая форма возьмет из POST то, что нужно, но где-то что-то не учел
так переделывай чтобы было понятно, а не дописывай туда еще кучу ифов или как ты там собираешься боротся с таким))
источник

T

Tim in Django [ru] #STAY HOME
формы у тебя там есть? или там и форма общая?))
источник

a

anton000v in Django [ru] #STAY HOME
Tim
так переделывай чтобы было понятно, а не дописывай туда еще кучу ифов или как ты там собираешься боротся с таким))
первая мысль изменить атрибут нейм у инпута в ините формы, но такого не делал и нагуглить не удалось, подумал, вдруг кто решал подобные штуки
источник

a

anton000v in Django [ru] #STAY HOME
Tim
формы у тебя там есть? или там и форма общая?))
ахха, не, формы есть))
источник

АС

Александр Сайганов... in Django [ru] #STAY HOME
anton000v
первая мысль изменить атрибут нейм у инпута в ините формы, но такого не делал и нагуглить не удалось, подумал, вдруг кто решал подобные штуки
добавить related_name= ?
источник

T

Tim in Django [ru] #STAY HOME
источник

T

Tim in Django [ru] #STAY HOME
Александр Сайганов
добавить related_name= ?
это не то)
источник

a

anton000v in Django [ru] #STAY HOME
тут же вроде лейбл меняется, атрибут нейм у поля хтмл формы не меняется
источник

a

anton000v in Django [ru] #STAY HOME
Tim
это не то)
ды, это имя связи
источник

T

Tim in Django [ru] #STAY HOME
anton000v
тут же вроде лейбл меняется, атрибут нейм у поля хтмл формы не меняется
так вроде к нему и привязка? словарик имя и значение
источник

a

anton000v in Django [ru] #STAY HOME
Tim
так вроде к нему и привязка? словарик имя и значение
не, по атрибуту name="name" оно пакует в список в пост запросе, label меняет лейбл, но не влияет на то, что передается в пост
источник

a

anton000v in Django [ru] #STAY HOME
Tim
так вроде к нему и привязка? словарик имя и значение
Все, спс, решил проблему.
Решение вот тут  дает возможность изменит имя поля формы (если заменить def _widget_render_wrapper(name, value, attrs=None) на def _widget_render_wrapper(name, value, *args, **kwargs), потому что джанга обновилась с тех пор, но работает криво все равно.
Помогло мне, внимание, знание русского языка)) А вернее - префикс. Оказывается, у джанго форм есть параметр prefix и если в инициализацию формы передать prefix=form_name вот таким образом:
form = Form(prefix='form_lalala'), то во все атрибуты name в html форме будет добавлен этот префикс и ошибка уходит
источник

T

Tim in Django [ru] #STAY HOME
anton000v
Все, спс, решил проблему.
Решение вот тут  дает возможность изменит имя поля формы (если заменить def _widget_render_wrapper(name, value, attrs=None) на def _widget_render_wrapper(name, value, *args, **kwargs), потому что джанга обновилась с тех пор, но работает криво все равно.
Помогло мне, внимание, знание русского языка)) А вернее - префикс. Оказывается, у джанго форм есть параметр prefix и если в инициализацию формы передать prefix=form_name вот таким образом:
form = Form(prefix='form_lalala'), то во все атрибуты name в html форме будет добавлен этот префикс и ошибка уходит
а я вроде нашел тебе решение))
такое же через префикс
источник

a

anton000v in Django [ru] #STAY HOME
Tim
а я вроде нашел тебе решение))
такое же через префикс
как на него вышел?) Потому что у меня это было пальцем в небо гугл запросом ахаха
источник

T

Tim in Django [ru] #STAY HOME
даже не могу сказать точно, в гугле что-то типа django forms add prefix name и django form override field name
источник

a

anton000v in Django [ru] #STAY HOME
понял, спасибо, теперь если в будущем у нас будет такая проблема нервничать не придется :)
источник

a

anton000v in Django [ru] #STAY HOME
еще лучше решение кстати прямо в инит запихать префикс, мне кажется, это вообще полезно делать для всех форм так-то
источник

a

anton000v in Django [ru] #STAY HOME
в таком виде:
self.prefix = kwargs.get('prefix') or "our_prefix"
проверил, работает
источник

MT

Monsieur Taishín in Django [ru] #STAY HOME
Приветы. Я правильно понимаю, что django не умеет логирование в БД из коробки? Хочу сделать логирование в clickhouse.
источник

MT

Monsieur Taishín in Django [ru] #STAY HOME
И, случайно никто не видел подобное для версии джанги 3+ https://django-background-tasks.readthedocs.io/en/latest/ ?
источник