题
每次新用户注册时,我都需要做一个休息请求。
休息请求返回一些我需要为Drupal用户帐户存储的数据,并能够作为内容显示。
什么是最好的/最清洁的方法?
解决方案
您可以简单地做到这一点 自定义模块, ,确保首先 了解Drupal钩系统 因为这是(几乎)所有Drupal的基础。
在您的模块中,您可以实施 hook_user_presave()
在保存用户帐户之前被调用。它将被要求进行创建和更新,因此您需要使用条件来检测新用户。其余通话后,有几个选项可以存储返回的数据。最简单的是用户帐户的数据属性。这是一个简单的PHP数组,将在数据库列中序列化。这不是很好的表演和明智的表演,并且不是很灵活(您可以查询存储的数据),但很容易。
function MODULE_user_presave(&$edit, $account, $category) {
// Accoding to user_save's documentation, this is a new user if
// $account->is_new is set to TRUE or if $account->uid is not set
if ($category == 'account' && (!empty($account->is_new) || !isset($account->uid)))) {
$edit['data']['MODULE'] = MODULE_get_data_from_rest($account);
}
}
不隶属于 drupal.stackexchange