Bagaimana cara mendapatkan pengguna (entitas) untuk nilai bidang tertentu?


8

Saya ingin menulis fungsi yang mengembalikan pengguna yang telah memasukkan nilai tertentu ke bidang pengguna khusus.

Katakanlah ada bidang ulang tahun khusus untuk setiap pengguna. Apa cara terbaik untuk mendapatkan semua pengguna dengan ulang tahun tertentu?

Saya bisa membuat kueri DB yang mencari tabel field_data_field_birthday dan mengembalikan entity_id (yang dalam hal ini adalah id pengguna) yang cocok dengan field_birthday_value cocok dengan nilai yang diberikan dan kemudian memuat pengguna tersebut.

Ini sepertinya sedikit kasar, apakah ada fungsi generik untuk use case ini tersedia? Di entitas API atau API bidang mungkin?

Jawaban:


12

Contoh sederhana untuk use case saya bertanya tentang:

$query = new EntityFieldQuery();
$query->entityCondition('entity_type', 'user')
  ->fieldCondition('field_birthday', 'value', $birthday);

$result = $query->execute();
$users_ids = array_keys($result['user']);

Bekerja seperti pesona.
Anders

Mohon saran namespace untuk menyertakan ini untuk menghindari Kesalahan Fatal.
Murid
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.