作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不确定这是否是正确的实现方式,所以我希望你能帮助我。我正在尝试引用 Drupal 8 中的自定义内容实体,条件是只有当前用户创建的实体应该显示。
基本上CUSTOM ENTITY 1 -> CUSTOM ENTITY 2(由用户创建)
我找到了一种使用 View 执行此操作的方法,但我想知道如何以编程方式实现此操作。
请注意,我已经设法获取 ID 列表并将其显示为下拉列表,但这不是我想要的。
我想将引用显示为自动完成。
这是我到目前为止得到的:
$fields['dishes'] = BaseFieldDefinition::create('entity_reference')
->setLabel(t('Dishes'))
->setDescription(t('Select the dishes to add to this menu'))
->setSetting('target_type', 'dish')
->setSetting('handler', 'default')
->setTranslatable(TRUE)
->setCardinality(-1)
->setDisplayOptions('view', [
'label' => 'hidden',
'type' => 'entity_reference_label',
'weight' => -1,
])
->setDisplayOptions('form', [
'type' => 'entity_reference_autocomplete',
'weight' => -1,
'settings' => [
'match_operator' => 'CONTAINS',
'size' => '60',
'autocomplete_type' => 'tags',
'placeholder' => '',
],
])
->setDisplayConfigurable('form', FALSE)
->setDisplayConfigurable('view', TRUE);
有没有办法为此添加条件?或者自定义 Drupal 获取引用实体的查询?
最佳答案
试试这个:
`
$fields['subgroup_id'] = BaseFieldDefinition::create('entity_reference')
->setLabel(t('Dalinama grupėms'))
->setDescription(t('Allocation groups.'))
->setSetting('target_type', 'distribution_group')
->setSetting('handler', 'views')
->setSetting('handler_settings', [
'view' => [
'view_name' => 'entity_reference_views_filter',
'display_name' => 'entity_reference_1',
],
])
->setRequired(TRUE)
->setCardinality(1)
->setDisplayOptions('view', array(
'label' => 'above',
'type' => 'list_default',
'weight' => -4,
))
->setDisplayOptions('form', array(
'type' => 'options_select',
'settings' => array(
'match_operator' => 'CONTAINS',
'size' => 60,
'placeholder' => '',
),
'weight' => -2,
))
->setDisplayConfigurable('form', TRUE)
->setDisplayConfigurable('view', TRUE);
`
关于drupal 8 BaseFieldDefinition entity_reference 带条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44881123/
我不确定这是否是正确的实现方式,所以我希望你能帮助我。我正在尝试引用 Drupal 8 中的自定义内容实体,条件是只有当前用户创建的实体应该显示。 基本上CUSTOM ENTITY 1 -> CUST
我是一名优秀的程序员,十分优秀!