Puncte:-1

Formatarea câmpului de dată cu API-ul Formular

drapel il

Bună, folosesc drupal 9.x și formele api pentru a genera un formular dinamic. Deși locuiesc în Țările de Jos, unde standardul formatului de dată este „zz/ll/aaaa”. Am căutat pe internet modalități recente de a modifica acel format în intrarea html. Dar toate modurile par a fi depreciate pentru că nu par să funcționeze pentru mine. Am încercat lucruri precum:

$form['data nașterii'] = [
  '#type' => 'data',
  '#title' => $this->t('Data de naștere'),
  '#date_date_format' => 'd-m-Y',
  // și
  '#dateformat' => 'd-m-Y',
];

Dar niciuna dintre acestea nu pare să funcționeze. Toate celelalte moduri pe care le-am găsit sunt din 2017 și mai jos. Ceea ce pare a fi depreciat pentru mine.

Puncte:0
drapel cn

Cred că poți spune că este depreciat. De cand Datetime este un modul de bază pe care îl puteți utiliza elementul de formular datetime:

$form = [
  '#type' => 'datatime',
  '#default_value' => new DrupalDateTime('2000-01-01 00:00:00'),
  '#date_date_element' => 'data',
  '#date_time_element' => 'niciunul',
  '#date_year_range' => '2010:+3',
  '#date_timezone' => 'Asia/Kolkata',
];

Drupal folosește formulare HTML5, iar localizarea se face în principal pe partea clientului.

Elementul de formular datetime este foarte bine documentat. Am luat exemplu din asta Pagina API, care apropo este exact cazul dvs. de utilizare a unui câmp numai pentru dată.

Jorn Reed avatar
drapel il
Deci, ceea ce faceți în esență acolo este, înainte de a defini câmpurile $form, să suprascrieți chestiile datetime html5 din partea clientului și să le suprascrieți cu orice fus orar/format doriți?
4uk4 avatar
drapel cn
Acesta este un exemplu din pagina API. Nu trebuie să adăugați fusul orar la elementul formular dacă doriți să utilizați fusul orar local al setărilor PHP.
Jorn Reed avatar
drapel il
Încerc să-l folosesc acum, dar nu îl pot face să funcționeze, deoarece nu îl poate găsi în spațiul de nume potrivit când folosesc DrupalDateTime()

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.