如何在Drupal 8上更新自定义用户字段

时间:2018-09-23 19:31:19

标签: php oop drupal drupal-modules drupal-8

我尝试在Drupal 8上更新/保存用户配置文件的自定义字段。 我很幸运获得了价值,但又没有将其挽回。

这是我的代码,有人知道为什么这行不通吗? 我已经尝试了这些的不同变体。

 $user = \Drupal\user\Entity\User::load(1);  // Load USER of ID=1
 $user->set(‚field_user_curpage‘,38); //set my custom field = 38 !!!
 $user->save();  // save … 

这是我加载这些字段的方式:

    $user = \Drupal\user\Entity\User::load(1);  // Load user with id = 1
    $curpage_load = $user->get(‚field_user_curpage‘); // Load custom field from User Profile
    $curpage = preg_replace(‚/[^0-9]/‚, ‚‘, $curpage_load->value);  // filter for No. only
    return $curpage;  // return output this

1 个答案:

答案 0 :(得分:2)

Entity Load函数返回一个静态对象。

尝试用此方式加载用户。
\Drupal::entityTypeManager()->getStorage('user')->load($id);