Využití modulu Entity API pro práci s daty
V předchozím článku jsem vám názorně ukázal, jak si zjednodušit přístup k field při získávání hodnot pro zobrazení ve vlastních šablonách. Nicméně pokud chcete data i zapisovat, je vhodné raději využít modul Entity API (bohužel dosud není ve finální verzi).
Jak získat data pomocí modulu Entity API?
Nejlepší bude si vše ukázat na příkladu:
<?php
//načteme si objekt s vybraným uživatelem
$user = user_load($node->uid);
//načteme si všechna data jako objekt
$edit = entity_metadata_wrapper('user', $user);
//změníme hodnotu field (lze vložit i pole)
$edit->field_user_surname->set($new_surname);
//uložíme
$edit->save();
//ověříme, zda byla správně uložena nová hodnota
$wrapper = entity_metadata_wrapper('user', $user);
$wrapper->field_user_surname->value();
?>
Více informací: http://drupal.org/node/1021556
Možnosti modulu Entity API jsou podstatně rozsáhlejší, protože nám především umožní definovat snadno entity vlastní (které lze jednoduše napojit na Views). Dokumentace k Entity API je zatím poměrně stručná, ale základy tam jsou uvedeny.
Malá odbočka: Určitě nebudu jediný, kdo si myslí, že takový zásadní modul měl být již součástí jádra. Navíc už to bude téměř rok, co vyšel Drupal 7 a dosud nemáme finální verze klíčových modulů jako jsou Views, apod.
Přidej vlastní názor
Ty