Drupal

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


2
如何在Drupal中执行存储过程?
我有一个网站,它在财务数据方面做很多工作。大多数情况下,它涉及对大量数据的操作。因此,我发现在mysql存储过程中执行这些操作很有用。我在数据库中存储了过程。我想知道如何在drupal中执行存储过程?有没有什么好的方法可以在drupal中执行存储过程?drupal一般如何处理存储过程?还是我们只需要使用PHP执行存储过程?
9 database 

1
允许用户使用相同的电子邮件(Drupal 7)
我正在开发一种系统,该系统将至少部分地供学生使用,其中一些人可能是小学生。我们用Drupal网站取代的旧系统将允许大量创建具有相同电子邮件地址的用户帐户。他们这样做是为了让老师可以将她的电子邮件仅用于所有学生,如果他们需要密码重置,信息只会发送给老师。同样,许多非常年轻的学生没有自己的电子邮件帐户。 我需要将这些帐户导入我的Drupal网站,但是我会遇到麻烦,因为Drupal 7不允许使用相同的电子邮件发送不同的帐户。在Google进行快速搜索之后,我发现并没有太大希望,但我发现Drupal 5有一个肮脏的骇客,但似乎与Drupal 7无关。
9 7  users  emails 


5
使用Form API上传后预览图片
我使用managed_fileForm API类型上传了图像文件,但上传图像后,该文件未显示为该字段旁边的缩略图。呈现的是图像的文件名,带有指向图像的链接和一个小图标。 上传图像后如何显示图像的缩略图(如来自核心“图像”字段的图像预览)? 另外,如何在其旁边显示默认图像(如果具有默认值)? 这是我的代码: $form['logo'] = array( '#title' => t('Logo'), '#type' => 'managed_file', '#required' => TRUE, '#default_value' => variable_get('logo', ''), '#upload_location' => 'public://', '#upload_validators' => array( 'file_validate_extensions' => array('gif png jpg jpeg'), 'file_validate_size' => array(0.3*1024*1024), )
9 7  forms  files 

2
在评论字段中禁用RTF
我已经安装了Drupal的CkEditor。但它也将其显示为评论表格。我不希望它显示出来。我不希望用户选择任何一个。我只希望他们有纯文本。我怎样才能做到这一点?


3
如何为一篇文章分配多个作者姓名?
在Drupal 7中是否有任何方法可以提及特定文章的两个或更多作者姓名? 我需要为一篇文章添加两个作者姓名。 我试图在Author文本框中添加两个作者姓名,并用逗号将它们分开,但这不允许我这样做。 有任何模块或其他方式可以做到这一点吗?
9 7  nodes 

3
自动更新大量站点的Drupal核心/模块(使用Drush)?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 2年前关闭。 我是不同托管服务提供商上许多Drupal网站的管理员。 有些人匆匆忙忙。其他则没有(也不能:例如共享托管)。 每次进行Core升级时,我都会花1或2个小时来更新所有内容(在升级之前,我会备份每个网站)。 使用Drush更新网站很简单,但是我需要对每个网站都做到这一点,例如: 赶快@dev up 赶快@othersite起来 等...等...等... 如何在以下位置自动更新Core(和模块): 我所有的拉车场吗?(我认为:cron与bash脚本) 我所有的非繁忙站点? 这是安全的,还是不建议您这样做?
9 drush  updating 

1
与核心搜索模块相比,使用Apache Solr有什么优势?
在Apache Solr实现搜索集成模块项目页面状态: Solr搜索可以替代核心内容搜索,并具有额外的功能和更好的性能。 这些额外功能到底是什么?(或者如果太多,我想在哪种用例中使用Apache Solr?) 我的网站托管在Pantheon上,它们免费提供Apache Solr。我肯定要设置吗?仅在某些情况下设置?
9 search 

2
节点上的“更改”
mysql> select nid, uid, created, changed from node; +-----+-----+------------+------------+ | nid | uid | created | changed | +-----+-----+------------+------------+ | 1 | 8 | 1336040166 | 1336046390 | +-----+-----+------------+------------+ 我想在node表上有一个“更改为”列,就像我们有一个“创建者”(uid字段)一样。这将跟踪谁对该节点进行了最后更改。我知道这可以从node_revision表派生,但这取决于为我感兴趣的内容类型启用的修订。 那么,什么是最好的方法呢?为什么Drupal核心默认不提供此功能?我认为“更改”是CMS应该附加到内容的非常标准的信息。
9 7  users  nodes 

3
“设置” field_get_items版本?
可以使用以下方法从实体检索字段项目 // Find all terms on $node in field 'field_tags'. $terms = field_get_items('node', $node, 'field_tags'); 但是,是否有一种方便的方法来进行反向,Core或其他方式? // Attach new term $term to $node in field 'field_tags'. $term = taxonomy_term_load($tid); $node = field_set_items('node', $node, 'field_tags', 'taxonomy_term', $term); node_save($node); 我想避免手动分配$ term的麻烦,请研究一下数组结构的外观,然后手动构建数组,因为有时这是不平凡的。 我可以发现核心队列中唯一看起来有些相似的问题是关于现场语言api DX的。
9 entities 


1
如果file_usage中没有对应的条目,托管文件会被删除吗?
我正在使用服务模块来实现REST API。一种资源允许带有上传文件的POST。在服务预处理功能期间,我将文件保存到temp目录。在服务后处理功能期间,我将文件移动到私有目录,调用file_usage_add,并保存主机实体。在保存临时文件和将临时文件移动到永久位置之间发生验证错误时,我不是在明确删除临时文件。我以为drupal cron会替我解决这个问题,因为file_usage中没有该文件的条目。但是,cron似乎并没有为我解决这个问题。有什么想法为什么呢? 查看file_managed时,我会看到要删除的临时文件。查看file_usage时,没有看到任何对应的记录。 更新-另一项信息:在大多数情况下,该文件实际上丢失了。我相信这是由于操作系统重新启动而清除了/ tmp目录。无论如何,如果不再找到实际文件,system_cron仍会删除文件的file_managed条目吗? 自从我开始从本机移动应用程序上传文件以来,就出现了此问题。每次上传时文件名都相同。在某些情况下,临时文件名在/ tmp目录中不存在,但是file_managed中的记录仍然存在,具有该文件名的URI。因此,在保存file_managed表时出现完整性错误。我计划更新该应用程序以创建一个随机文件名。同时,我想清理数据库以及用于管理这些文件的周围“胶水”逻辑。如果system_cron会为我做所有事情,那就太好了。但是据我所知,system_cron并未删除file_managed中的旧的,完全未使用(和未引用)的记录​​。
9 7  files 

3
Drupal的IIS问题-更新管理器:更新失败!目录被php-cgi.exe锁定
在GUI上使用“更新管理器”时遇到一些问题。某些目录被锁定php-cgi.exe,因此用新下载的目录(较新的目录)替换原始目录不成功。 但我不得不提的是它不是一个权限问题,因为该模块可以通过获取安装“从URL安装”上/admin/modules/install,和工作没有问题。 让我们举个例子: 可用的更新页面(/admin/reports/updates/update): 现在,我选择要更新的Select(或其他)模块(选择哪个模块都没有关系,结果相同!!!这只是一个示例)。 我点击“下载这些更新”按钮。 好的,下载模块的更新实例不会出现问题: “ 更新已成功下载 ”: 现在,单击“ 继续”。 错误来了。结果: “ 更新失败!有关更多信息,请参见下面的日志 。select_or_other 安装/更新时出错 文件传输失败,原因:无法复制D:/Projects/web/drupal-7/tmp/update-extraction-6d8993ac/select_or_other/LICENSE.txt到/Projects/web/drupal-7/htdocs/sites/all/modules/select_or_other/LICENSE.txt。” 好的,我开始尝试检查可能的原因。 下面是我的Drupal目录结构如下:。我设置../tmp为临时目录(位于中/admin/config/media/file-system),Drupal文件位于中htdocs。这是正确的,因为如上所述,我可以通过GUI安装模块。 当我尝试进入htdocs/sites/all/modules/select_or_other目录时,不能,因为我收到“文件上的访问被拒绝......sites/all/modules/select_or_other!”。在Total Commander中打开时,而“ ...sites/all/modules/select_or_other不能访问,访问被拒绝。”当打开Windows资源管理器: , 好的,我右键单击该文件夹,然后通过快捷菜单中的助手打开Unlocker。它说该目录是通过php-cgi.exe以下方式锁定的: 我单击“全部解锁”,该文件夹现在可以被删除(因为不再通过它锁定php-cgi.exe),因此它只是 我可以在找到更新的select_or_other模块的目录tmp: 所以我必须手动将其移至sites/all/modules目录。 锁定目录的可能原因是php-cgi.exe什么?(可能的Windows缓存扩展1.1 PHP 5.3通过Web平台安装程序安装?但是,如果是的,这是什么原因,例如图像的缺失或类似的通过GUI正常工作?) 我能做些什么来避免这个问题,并让“更新经理”的工作?
9 7  iis  updating 

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.