I'm new to drupal and I need some help.
I created a new module with name user_extra
. Which create necessery table when Installing the module.
But I also need to insert some database field in 'users_field_data'
table ('user_extra_id'
and 'user_office'
)
In baseFieldDefinitions
I wrote all necessery database table fields for user_extra
table.
public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
// Standard field, used as a unique if primary index.
$fields['id'] = BaseFieldDefinition::create('integer')
->setLabel(t('Unit ID'))
->setDescription(t('The unit ID.'))
->setReadOnly(TRUE)
->setSetting('unsigned', TRUE);
$fields['uuid'] = BaseFieldDefinition::create('uuid')
->setLabel(t('UUID'))
->setDescription(t('The unit UUID.'))
->setReadOnly(TRUE);
.
.
.
$fields['user_info'] = BaseFieldDefinition::create('string')
->setLabel(t('User Info'))
->setDescription(t("The User Info"))
->setSetting('max_length', 255)
->setDisplayOptions('form', array(
'type' => 'string_textfield',
'weight' => 10,
))
->setDisplayConfigurable('form', TRUE);
return $fields;
}
When I install the module it inserts all values that I define in baseFieldDefinitions
.
But I also need to create 'user_extra_id'
and 'user_office'
in 'users_field_data'
table with setDisplayOptions
and setDisplayConfigurable
options.
This is the commenting that I made in entity file
/**
* @ContentEntityType(
* id = "user_extra",
* label = @Translation("user extra"),
* handlers = {
* "storage" = "Drupal\user_extra\UserextraStorage",
* "storage_schema" = "Drupal\user_extra\UserextraStorageSchema",
* "access" = "Drupal\user_extra\UserextraAccessControlHandler",
* "list_builder" = "Drupal\user_extra\UserextraListBuilder",
* "view_builder" = "Drupal\user_extra\UserextraViewBuilder",
* "views_data" = "Drupal\user_extra\UserextraViewsData",
* "form" = {
* "default" = "Drupal\user_extra\Form\UserextraForm",
* "add" = "Drupal\user_extra\Form\UserextraAddForm",
* "edit" = "Drupal\user_extra\Form\UserextraEditForm",
* "delete" = "Drupal\user_extra\Form\UserextraDeleteForm",
* }
* },
* admin_permission = "administer user_extra",
* base_table = "user_extra",
* entity_keys = {
* "id" = "id",
* "label" = "name",
* "uuid" = "uuid",
* },
* links = {
* "canonical" = "/admin/user_extra/{user_extra}",
* "add-form" = "/admin/user_extra/add",
* "delete-form" = "/admin/user_extra/{user_extra}/delete",
* "overview-form" = "/admin/user_extra/${user_extra}/overview",
* "edit-form" = "/admin/user_extra/{user_extra}",
* "collection" = "/admin/user_extra",
* "children" = "/admin/user_extra/{user_extra}/children",
* },
* )
*/