Drupal

Drupal开发人员和管理员的问答

4
如何获取被引用实体的实例?
我有一个节点对象,其图像字段名为field_image。当我做 $node ->get('field_image') ->first() ->getValue() 我得到一些属性而不是实体对象的数组。该数组如下所示: 'target_id' => string '8' (length=1) 'alt' => string '' (length=0) 'title' => string '' (length=0) 'width' => string '587' (length=3) 'height' => string '458' (length=3) '_loaded' => boolean true '_accessCacheability' => object(Drupal\Core\Cache\CacheableMetadata)[1092] protected 'cacheContexts' => array (size=0) ... protected 'cacheTags' => array (size=0) ... …
35 8  entities 


6
如何避免检查特定模块的更新?
在当前的项目中,我不得不修补一些模块(节点层次结构,工作台访问权限等)的生命。这些模块现在绝对可以满足项目的需求,并且不太可能随着将来对核心的更新而中断。 话虽如此,当应用程序移交时,客户端将具有对系统的完全(用户1)访问权限,因此,当这些模块具有可用更新时,将警告用户。他们会更新它们,无论我恳求他们不要几次(噢,没有客户,生活会多么轻松!)。 是否有一种方法(也许在模块的.info文件中)说服更新管理器不检查这些模块的更新? 编辑 我知道project status url该.info文件可用的密钥,所以我想我可以将其设置为不存在的URL,但我宁愿以一种干净的方式进行操作。
35 7  updating 

5
是否有Drupal API函数可按类型获取节点列表?
是否有像node_load()这样的Drupal API函数会返回给定类型的节点列表? 我试过了$nodes = node_load(array("type" => 'student_vote')),但是它只返回一个节点。 我知道我可以编写类似的代码node_load(),但是我想看看是否已经有类似的代码了。
35 nodes 

5
在db_query中使用IN子句
我不知道如何使用占位符在查询中添加IN子句。 我希望它是这样的: $nids = array(1, 2, 3); $result = db_query('SELECT * FROM {node} WHERE nid IN :nids', array(':nids' => $nids)); 找不到有关此简单任务的任何文档。实现此目的的正确方法是什么?
35 7  database 

11
使用EntityFieldQuery获取具有特定角色的所有用户
我以为这是一件容易的事,但是似乎没有Drupal方法。据我所知,我必须使用EntityFieldQuery它-因为API中提到的条件user_load_multiple()已弃用。 所以我尝试了这个: $query = new EntityFieldQuery; $query ->entityCondition('entity_type', 'user') ->propertyCondition('rid',array(1,2,3); $result = $query->execute(); 但是我得到了: PDOException:SQLSTATE [42S22]:找不到列:1054“ where子句”中的未知列“ users.rid”:SELECT users.uid AS实体ID,:entity_type AS实体类型,NULL ASversion_id,:bundle AS捆绑包来自{users}个用户在哪里(users.rid =:db_condition_placeholder_0); EntityFieldQuery-> execute()中的数组([:db_condition_placeholder_0] => 3 [:entity_type] =>用户[:bundle] =>用户) 所以我首先想到的是,我必须加入users_roles-Table等,但这将导致重复。 有谁知道如何做?
35 7  entities 

5
批量更新?
我向已经有许多节点的Drupal 7内容类型添加了一个新的(文本)字段。 如何为所有这些节点填充默认值?
35 7  entities 

9
如何启用开发人员/调试模式?
安装drupal 8核心(使用标准配置文件)。每当我遇到异常/错误时,都会出现空白页,显示“网站遇到错误。请稍后重试。” (如下图所示)文本,没有关于错误的详细信息/跟踪。
35 8  debugging 


2
如何从推荐的模块版本切换到开发版本?
例如,我当前正在使用Geofield模块。我正在使用版本: 7.x-1.0-beta2(2011年11月17日) 现在,我看到开发版本具有一些我想要的功能。如何正确安全地“升级”到模块的开发版本? 7.x-1.x-dev(2012年1月10日) 我目前要做的是,从任何内容类型中删除地理字段,禁用地理字段模块,卸载地理字段模块,从服务器上物理删除地理字段模块,然后下载并安装开发版本。这似乎可行,但我想知道是否有更有效的工作流程。 (我已经安装了drush,因此我愿意接受涉及drush的解决方案)
34 7  drush  updating 

4
如何更改View中的Ajax加载行为?
我有一个视图,其中有一些裸露的滤镜。它使用AJAX和自动提交功能,因此一旦更改过滤器选项,便会重新加载视图。 在选择选项和重新加载视图之间的短暂延迟中,熟悉的蓝色AJAX th子显示在表单底部的某个位置(我认为隐藏的提交按钮当前位于何处)。 我知道我可以通过覆盖throbber元素的CSS来自定义此图像,但是我不希望完全不使用它。 我更想做的是使用jQuery动画暂时淡出暴露的滤镜形式(最好是主视图)。然后,当AJAX调用完成时,它们会逐渐消失。 失败的话,我想使用与Views UI模块更新时使用的方法相同的方法,即将此图标放在页面中间: 因为已经内置,所以我只是假设会有一个设置可以更改此加载行为的样式/位置。不过没有这种运气。 如何实现这两种方法? 我正在将Drupal 7与Views 7.x-3.3一起使用。
34 7  views  ajax  javascript 

7
以编程方式创建节点
如何以编程方式创建带有日期和图像字段的节点? 我知道我可以在Drupal 7中使用以下代码来做到这一点。 global $user; $node = new stdClass(); $node->title = "YOUR TITLE"; $node->type = "YOUR_NODE_TYPE"; node_object_prepare($node); // Sets some defaults. Invokes hook_prepare() and hook_node_prepare(). $node->language = LANGUAGE_NONE; // Or e.g. 'en' if locale is enabled $node->uid = $user->uid; $node->status = 1; //(1 or 0): published or not $node->promote = …
34 8  nodes 


9
在字段可伸缩性的上下文中,重用字段与创建新字段之间有什么良好的平衡?
我已经在网站上阅读了以下短语: 与其将新字段添加到内容类型,不如添加现有字段是降低系统复杂性并提高可伸缩性的更好选择。 并产生了一些疑问。 在我们正在开发的系统中,我们有可能在3种或4种内容类型之间重用一个字段,但恐怕它不会像引号中所说的那样提高可伸缩性,因为它会减少它,因为该字段的表会更快成为瓶颈。 (至少在这种情况下,这是我的推理,因为该字段的所有值在一起每年将达到数百万美元,这会使表太大)。你同意吗? 进行架构时,要针对多少行是明智的最大目标?这样,我们可以决定何时重用字段以及何时创建新字段(即使存在重用的机会)。

3
搜索API与Apache Solr搜索
我一直在Drupal 6中使用Apache Solr搜索模块,并且正在寻找Drupal 7安装的Search API。我在这里看到了一些讨论,但是我正在寻找选择其中一个的任何理由。 有理由选择一个吗?如果是这样,为什么或为什么不呢?我听说Search API可能存在复杂性问题和/或性能问题。这是真的?
34 search 

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.