Size: a a a

2019 September 25

AK

Alexey Korepov in Drupal RU
Andrey Postnikov
Скорее зачем 2 одинаковые формы на одной странице
На странице несколько табов с одной и той же формой.
источник

AK

Alexey Korepov in Drupal RU
Comrade Gagarin
если конечно сам не захардкодил этот id в условиях
не, сам не хардкодил, прям на чистом Друпале проблема воспроизводится
$build['form1'] = \Drupal::formBuilder()->getForm(\Drupal\korepov_tests\Form\TestForm::class);
   $build['form2'] = \Drupal::formBuilder()->getForm(\Drupal\korepov_tests\Form\TestForm::class);
   return $build;
У первой формы state api работает, у второй нет
источник

ИЛ

Иван Лещёв in Drupal RU
Alexey Korepov
На странице несколько табов с одной и той же формой.
а так зачем делать? ладно разные формы одного типа
источник

VS

Victor Stepankov in Drupal RU
В D7 такое через hook_forms() надо было пропускать
источник

AK

Alexey Korepov in Drupal RU
Иван Лещёв
а так зачем делать? ладно разные формы одного типа
чтобы юзер в разных табах мог заполнить форму двумя разными значениями одновременно, сабмитится она по ajax в нужный таб.
источник

AK

Alexey Korepov in Drupal RU
Victor Stepankov
В D7 такое через hook_forms() надо было пропускать
в d8, чтобы state api заработал, тоже видимо надо, но не пойму что надо отхукать, чтобы подцепился state api
источник

C

Comrade Gagarin in Drupal RU
Проверил, действительно не пашет. Занятно. Можно закастылить: $form['#id'] = Html::getUniqueId('example-form'); +
'#states' => [
       'visible' => [
         '#' . $form['#id'] . ' :input[name="example_select"]' => ['value' => 1],
       ],
     ],
источник

ИЛ

Иван Лещёв in Drupal RU
это не костыль, так должно быть
источник

ИЛ

Иван Лещёв in Drupal RU
просто  мануалах не думают, что нужны уники, когда пишут
источник

ИЛ

Иван Лещёв in Drupal RU
когда аяксом форма придёт, аналогично может отвалиться
источник

C

Comrade Gagarin in Drupal RU
не, с аяксом там норм
источник

C

Comrade Gagarin in Drupal RU
Victor Stepankov
В D7 такое через hook_forms() надо было пропускать
источник

AK

Alexey Korepov in Drupal RU
с аяксом такая же беда - первая форма норм, а вторая - "всё" :( Пасиб за костыль, подпирает норм! =)
источник

AK

Alexey Korepov in Drupal RU
Вообще по уму в state_api нужно сразу делать селекторы включащие id формы, а не просто по имени поля.
источник

C

Comrade Gagarin in Drupal RU
две одинаковые формы на странице это крайне редкий кейс, поэтому нет, не надо
источник

ИЛ

Иван Лещёв in Drupal RU
так с id формы та же фигня
источник

ИЛ

Иван Лещёв in Drupal RU
по уму нахрен не надо так делать
это фронт и работать оно должно на фронте
источник

ИЛ

Иван Лещёв in Drupal RU
но это ж контриботня, которая одна другую переписывает
источник

AP

Andrey Postnikov in Drupal RU
Comrade Gagarin
две одинаковые формы на странице это крайне редкий кейс, поэтому нет, не надо
И сделано намеренно https://www.drupal.org/node/2503277
источник

ИЛ

Иван Лещёв in Drupal RU
поэтому давайте чтоб через сто хуков можно было переписать
источник