Puncte:2

Unirea a două câmpuri de text într-un câmp de text calculat

drapel in

Am două câmpuri al căror tip este Lista (text). În lista de valori permise, vreau să mă alătur acestora. Am folosit următorul cod.

$valoare = $entitate->câmp_a->valoare . $entitate->câmp_b->valoare;
$valoare = $fields['field_a'][0]['value'] . $fields['field_b'][0]['value'];

Pot obține rezultatul bine, dar valoarea returnează numai cheile. Cum pot obține etichetele?

imaginea conținutului câmpului am cheia în engleză, dar eticheta în arabă

Puncte:2
drapel ru

Pentru a obține valorile permise setate în setările de câmp, trebuie să apelați după cum urmează

$entity->field_my_field->getSetting('allowed_values')[$entity->field_my_field->value];

codul tău ar trebui să arate așa

$valoare = $entity->field_a->getSetting('allowed_values')[$entity->field_a->value] . $entity->field_b->getSetting('allowed_values')[$entity->field_b->value];
drapel in
Acest lucru a funcționat grozav mulțumesc.
Puncte:0
drapel cg

Deși întrebarea nu este foarte clară pentru mine, dar cred că următoarele te-ar putea ajuta,

$key1 = $entity->field_a->value;
$key2 = $entity->field_b->value;
$value1= $fields['field_a']["#options"][$key1];
$value2= $fields['field_b']["#options"][$key2];
$valoare = $valoare1 . $valoare2;
drapel in
Aceasta returnează o valoare goală.
drapel in
să spunem că am un câmp de text listă cu valori permise ca cheie|etichetă: SUA|Statele Unite ale Americii Marea Britanie|Regatul Unit AU|Australia Acum am o înregistrare salvată în baza de date cu valoarea selectată Statele Unite ale Americii când se utilizează $value = $entity->field_a->value; aceasta va returna SUA și nu Statele Unite Vreau să iau eticheta Statele Unite
Yuseferi avatar
drapel cg
@Al-JasimMohammed, așa cum am menționat în soluții, primul parametru este cheie, atunci înseamnă că „Marea Britanie” este o cheie. trebuie să obțineți eticheta. cum poate fi posibil, ar trebui să-l obțineți din elementul formular. spune-mi unde vrei sa faci asta? la trimiterea formularului? soluția este valabilă, dar trebuie doar să ajustați locul în care doriți să o obțineți. dacă este formular și trimitere formular, atunci trebuie să-l obținem de la `$from` în loc de `$fields`. va rog sa dati mai multe detalii
drapel in
Vreau să-l obțin într-un câmp de text de listă calculat, pe care l-am adăugat de la (admin/structure/types/manage/article/fields) Apoi vreau să-l afișez într-o pagină de nod
Yuseferi avatar
drapel cg
@Al-JasimMohammed nu o faci doar în șablonul de vizualizare a nodului fără a angaja cuplarea? există vreun motiv special pentru asta? De asemenea, puteți face acest lucru în nodul submit.

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.