Questions tagged «entities»

自Drupal 7以来使用的术语中的节点,注释,分类术语和用户通常称为“实体”。

5
hook_form_alter中“ und”的语言键的最佳实践
我正在自定义模块中以某种形式进行修改。代码如下: function my_module_form_alter(&$form, &$form_state, $form_id) { if ($form_id == "someID") { $form['field_charity_author']['und'][0]['value']['#value'] = arg(3); //$form['field_charity_author']['#type'] = 'hidden'; } } 但是,我认为硬编码und是不好的。在这种情况下,正确修改表单字段的正确方法应该是什么?
30 7  entities  hooks  i18n-l10n 

1
如何检查实体中是否存在字段?
在实体节点中,我要检查“ abc”字段是否存在。如果存在,我将通过$value->get('abc'). 但是该字段不存在的内容类型给出错误: 该网站遇到意外错误。请稍后再试。 如何检查实体中是否存在字段?
28 8  entities 

6
调试EntityFieldQuery吗?
我有一个行为异常的模块。EFQ正在重现意想不到的结果,但是我无法仅通过查看代码来了解原因。EFQ是否有dpq()等效项?其他调试方式?
27 7  entities  debugging 


1
如何创建实体引用显示的视图类型?
我有一个实体,其中包含实体引用的字段集合,并且可以使用“ 实体”选择模式为“简单”(通过捆绑包进行可选过滤)来编辑实体引用,但是列表中仅显示“ 实体字段名称” x。 我还创建了一个视图,该视图显示了来自所引用实体的信息,但是当我将实体选择模式切换为“视图”时,会收到以下消息: 找不到符合条件的视图。使用“实体引用”显示创建视图,或将这样的显示添加到现有视图 。 之后,我创建了多个“实体引用”显示类型的视图,这些视图显示相同的信息,但仍然出现错误消息。 有人可以告诉我创建实体引用显示视图的步骤吗?PS。我认为我的工作比往常要棘手,因为实体引用是字段集合中的多值元素,但是我无法在其上创建视图>
26 views  entities 

5
结合使用OR和EntityFieldQuery
在今天之前,我从未需要执行此操作,但是您似乎不能使用进行OR查询EntityFieldQuery,因为db_or它用于选择查询。 一个示例将涉及具有日期字段(该字段的值为空或今天之后)的所有实体。 我是否缺少某些东西或技巧,或者根本不支持此方法?

6
以编程方式附加文件
我创建了“图库”内容类型,并添加了两个字段:“照片”和“文档”。然后,我使用以下代码在“文档”字段中上传文件: $file = file_save_upload('document', array( 'file_validate_extensions' => array('txt doc'), // Validate extensions. )); // If the file passed validation: if ($file) { // Move the file, into the Drupal file system if ($file = file_move($file, 'public://')) { $file->status = FILE_STATUS_PERMANENT; // $file->file_display = 1; $file = file_save($file); } else { …
25 7  nodes  entities 

4
在当前D8状态下,创建新的内容实体类型与为“节点”内容实体创建内容类型的决策树是什么?
自从接受有关问题“ 何时创建实体而不是仅添加新的内容类型才合适?” 这一问题的答案以来,我们已经见证了Drupal 8的四年发布。而且,实体在Drupal 8中比在Drupal 7中更重要。(RefB,RefC,RefD) 在这个新的Drupal 8世界中,用于为“节点”类型的内容实体创建新的内容实体类型与新的内容类型的决策树是什么? 在考虑回应时,请考虑以下几点: 与新的内容实体类型相比,在99%的情况下,仍适用于“节点”的内容实体类型的新“内容类型”吗? 现在,决策树是否包括更多,更好或更清楚的理由,转而不再使用“节点”内容实体类型,而是创建新的内容实体类型?如果是的话,那是什么?它们是否包括: 性能? 安全/权限? 可以与Node-entity-type Content-Types一起使用而与其他内容实体类型不一起使用的模块数量? 也许-基于上面引用的先前接受的答案-进行自定义内容实体类型的唯一一般原因是,如果您想对Node数据进行分组(例如,使用分类术语),还是要对Node进行注释(例如,使用注释)? 模块兼容性似乎是决策树特别有趣的考虑因素。当前,安装最多的模块很少有8.x发行版,而不仅仅是alpha,beta或rc(发行候选版)。似乎很难确定其中有多少将使用新的自定义实体类型与新的Node-entity内容类型开箱即用。似乎没有项目属性可以区分“为实体编写”和“为节点实体内容类型编写”的属性。 看一下pathauto,它是当前所有版本8.x的第四大安装模块。人们正在努力开发一个8.x版本,该版本通常支持实体,而不仅仅是节点实体类型的内容类型。但是其他所有模块呢?支持实体的模块通常需要自定义内容实体类型时,才具有与模块相关的“挂钩”吗?(相对于这些模块如何直接使用新的Content Types开箱即用?) 这似乎是 pathauto团队正在处理的挑战,也许这是偏离自定义内容实体类型的原因吗? 还可能值得一提的是,Drupal 8核心包含一个用于为类型“节点”的内容实体创建新的内容类型的UI,但当前不包含用于创建新的内容实体类型的UI。(RefX,RefY,RefZ)
24 entities  8 

5
如何使用entity_metadata_wrapper设置文件字段的值
使用entity_metadata_wrapper时如何设置文件字段的值? 我试过在代码中执行此操作: $file = new stdClass(); $file->uid = 1; $file->uri = $file_path; $file->filename = basename($file_path); $file->filemime = file_get_mimetype($file_path); $file->filesize = filesize($file_path); $file->status = FILE_STATUS_PERMANENT; $file->display = '1'; file_save($file); // I also tried: $file = file_save($file); $node = array( 'type' => 'news_item', 'uid' => 1, 'status' => 1, 'comment' => 0, …
24 7  files  entities 

3
我应该在何时以及何时使用:node_load()或entity_load()?
标题说明了一切。 我知道Entity_load提供了一种高效且高效的方式来加载多个节点,同时减少了数据库查询,因此我认为在这种情况下,我应该使用entity_load()。但是,当我只想要一个节点时,应该使用哪个节点?会否在d8中弃用node_load(),转而使用更通用的Entity_load()API? 我猜对于熟悉的user_load()也有同样的问题。
24 entities 

1
entity_metadata_wrapper()函数的作用是什么,为什么要使用它?
目前,我似乎正在为许多使用Entity API的模块开发附加组件,并且该entity_metadata_wrapper()功能不断弹出。 该文档页面表示,这一下吧: 返回给定数据的属性包装器。 如果包装了实体,则可以使用包装器为实体属性检索其他包装器。 忽略其中的“实体”一词的弗洛伊德奇妙的拼写,我真的不明白这些包装的目的是什么。 我知道该函数实质上返回一个EntityDrupalWrapper类: 包装器简化了实体属性的getter和setter回调的应用 但是我不明白的是它如何使事情变得更容易。 例如,要更新节点的状态属性,可以使用以下代码: $node = node_load($nid); $node->status = 1; node_save($node); 很干净 据我了解(但可能是错误的),使用的等效代码entity_metadata_wrapper()会比这更冗长。 我不确定在这里是否仅仅是因为使用了“包装器”这个词,但是我也仔细查看了Entity模块中的代码,并且我真的不太了解它。 有谁能够解释使用此功能的好处,并可能为常见用例提供一个简单的代码示例?
23 entities 

2
以编程方式更新实体参考字段
我知道我可以使用类似于以下代码的方式在Drupal 7中更新(或为其设置值)。 $node['field_code_used_by'][LANGUAGE_NONE][0]['target_id'] = $id; 我想以编程方式为Drupal 8中的用户实体引用字段设置一个值。 我尝试过$node->field_code_used_by->setValue(1);,$node->field_code_used_by->entity->value = 1;但他们都不起作用。 如何设置实体参考字段的值?
23 8  entities 

2
使用实体参考而不是术语参考有什么好处/优势?
确实是一个非常简单的问题,但是相对于实体参考字段,使用核心术语参考字段有什么好处? 显然,标记并不是Entity Reference的真正选择,但是我已经使用内联实体表单从节点页面创建新术语,并且效果很好(如果术语包含字段,我更喜欢标记)。 tl; dr 除了标记外,使用实体参考而非术语参考来引用分类标准术语还有什么好处/优势?

3
现在不推荐使用node_view(),该如何渲染节点?
在Drupal 7中,我经常使用node_view()以下方式在块或页面中渲染节点(使用视图模式): $nids = array(123,456,789); $nodes = node_load_multiple($nids); foreach ($nodes as $node) { $node_view = node_view($node, 'teaser'); $output .= drupal_render($node_view); } $build['nodes']['#markup'] = $output; return $build; node_view()/ entity_view()已被视图构建器弃用,如更改记录中所述,已由视图构建器替换。实体现在由视图构建器呈现。该信息不够详细,我无法弄清楚如何获得相同的结果。 如何在Drupal 8中渲染节点,以便可以在块或页面的渲染数组中使用输出?
22 entities  8 

5
隐藏字段标签
在Drupal 7中渲染自定义字段时,是否可以隐藏字段标签? 在我的节点模板中,我有: <?php print render($content['field_image']); ?> 这给了我: <div class="field field-name-field-image field-type-image field-label-above"> <div class="field-label">Image: </div> <div class="field-items"> <div class="field-item even"> <img typeof="foaf:Image" src="http://site.com/sites/default/files/image.jpg" alt=""> </div> </div> </div> 我不想有<div class="field-label">Image: </div>。 除了在CSS中或手动创建标记之外,还有其他方法可以摆脱这种情况吗? 我试过了unset($content['field_image']['#title']),但这给了我<div class="field-label">: </div>。
22 7  theming  entities 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.