使用REST API进行用户可定义内容的数据存储 -- entities 领域 和 8 领域 drupal 相关 的问题

Using REST API for data storage for user definable content


3
vote

问题

中文

我可能会完全咆哮错误的树,但是我试图达到以下内容。

  • Drupal 7.
  • 自定义休息Web服务,可以保存用户可定义的内容类型。
    • 这些内容在实体级别存储和修订。 (不是像Drupal这样的场地)
  • 我希望能够使用实体API +实体模型来定义内容类型来存储在其余服务中。
  • 插入时不创建耳卸现场表。

当我hook_entity_insert时,仍在创建字段表。如何防止Drupal创建这些表。

也,这听起来像是去的最好的方法吗?是否有更简单的方法来实现使用REST服务,而不是在DRUPAL DB中重复数据?

谢谢。

英文原文

I might be barking up the wrong tree completely however I am trying to achieve the following.

  • Drupal 7.
  • Custom REST web service which can hold user definable content types.
    • These pieces of content are stored and revisioned at a entity level. (not at a field level like drupal)
  • I want to be able to use Entity API + Entity Model to define Content Types to store in the REST service.
  • When inserting DO NOT create the Drupal field tables.

When I hook_entity_insert the field tables are still being created. How can I prevent Drupal from creating these tables.

Also, does this sound like the best way to go about this? Is there an easier way to achieve using REST services and not duplicating data in the Drupal DB?

Thanks.

     

回答列表

2
 
vote
vote
最佳答案
 

这是通过创建自定义实体控制器类来实现的,扩展 99887660 或创建 DrupalEntityControllerInterface 实现。

然后使用 Field Storage API 并附加所需的正确字段。

我使用了 mongodb mongodb_field_storage 模块参考。

这一切都按预期工作,我不使用drupal数据库来存储任何实体元数据或字段数据。仅使用 field_config 表。

我所拥有的唯一打嗝是每个字段的Drupal 7'的存储引擎实际上需要在变量表中定义 field_storage_default 到您的自定义存储引擎。我尚未找到一种方法在没有修补核心的情况下以每场实地为基础勾勒。查看此处更多详细信息。

 

This is achieved by creating a custom Entity Controller class, extending either the DrupalDefaultEntityController or creating a DrupalEntityControllerInterface implementation.

Then create a field storage engine, using the Field Storage API and attach the correct fields where required.

I used the MongoDB mongodb_field_storage module for reference.

This all works as expected, and I do not use the Drupal database to store any Entity Metadata or field data. Only the field_config table is used.

The only hiccup I have is that the Drupal 7 'Per Field' storage engine actually needs to be defined in the variable table setting the field_storage_default to your custom storage engine. I have yet to find a way to hook into this on a per field basis without patching core. See here for more details.

 
 
 
 
1
 
vote
它看起来现在有两个(2)个模块,允许远程数据存储:
  • web服务数据
  • 远程实体api

在通过Drupal 7中的Web服务集成第三方数据结构的最可靠和容错的方法是什么?

 

It looks like there are now two (2) modules that allow for remote data storage:

  • Web Service Data
  • Remote Entity API

There's a good write-up on these and other options over at What is the most reliable and fault tolerant way to integrate 3rd-party data structures via a web service in Drupal 7?.

 
 

相关问题

5  商业产品以价格为单项方式  ( Commerce product programatically with price ) 
如何在网站的默认货币中获得正确的价格,如添加产品表单? 此功能为产品提供0.01美元的产品,我想要1.00美元。 我相信这与计算价格有关吗? function generate_products () { $product_type = 'product'; $values = array (...

0  排序字段项  ( Sort field items ) 
是什么是Drupal执行的适当时刻,以在节点显示中排序字段?内容类型之一具有此列表,该列表在其他节点上点,显示与其标题的链接。问题是,它们不会按字母顺序排序。我不想使用视图。我应该在节点中进行排序 - content-type.tpl.php还是相当一些字段挂钩?示例赞赏! ...

0  商务产品显示节点使用多个字段?  ( Commerce product display node using multiple fields ) 
hello读取我如何显示我的产品?我留下了深刻的内容,有一个显示节点有一个简单的产品的简单属性系统。 例如衣服可以具有不同尺寸的产品参考字段。 对于更复杂的用例,我们可以有多个字段吗? 例如衣服尺寸和颜色,每个组合具有不同的产品。我理解这需要更多的产品。 有没有人谈过这个用例或知道这里的工作流/模块? ...

0  Drupal Commerce - 购物车内的持久数据存储  ( Drupal commerce persistent data storage within the cart ) 
我的目标是建立一个商业网站,将"令牌" (整数值)属于产品,而不是在购物车内运行总数。这个想法是检查用户在允许购买之前有多少令牌,允许将产品添加到购物车等。到目前为止,我的策略是这样做的: hook_entity_info_alter在线项产品类型'基于令牌的产品'添加令牌值的持久数据字段,这是在视图中所必需的。...

9  我应该什么时候使用现有字段?  ( When should i use an existing field ) 
在将新字段添加到内容类型时,我应该何时保留现有字段?例如,如果我需要我的内容类型的图像字段是重复使用现有图像字段的好主意? ...

2  如何进行所需摘要领域?  ( How can i make the summary field required ) 
是否有一种方法可以在节点表单中默认情况下需要摘要字段? ...

4  创建一个简单的日期格式化程序以在视图中使用  ( Create a simple date formatter to be used in views ) 
我正在使用视图数据导出,以创建一个看起来像的自定义RSS expied 我的头衔 2012-05-12 22:33:00 开始日期是日期模块提供的日期字段。 为了实现第二个字段上的日期格式,我必须在日期模块中使用普通格式化器以避免主题标签。不幸的是,普通格式化,给出了DB忽略时区设置中的原始日期。 我...

8  以编程方式创建捆绑包?  ( Create a bundle programmatically ) 
我一直在尝试弄清楚允许用户动态创建项目请求表单的这个问题(添加他自己的字段,包括下拉,多元化等......)。用户需要一种方法来创建多种项目请求类型(或许是?),用于不同的业务单位。我想到了实体/束关系是完美的。所以这是我的想法: 使用架构API定义我的基本表"项目" 。使用实体API Hook_entity_inf...

0  在视图中排序自定义字段  ( Sort on custom field in views ) 
我在d7中使用视图3,并在学生结果列表上添加了自定义百分比。我想排序百分比字段,如何在自定义字段上添加排序? 谢谢你的帮助。 ...

2  如何在使用术语参考字段时由父级分类术语?  ( How to group taxonomy terms by their parent when using term reference field ) 
有没有办法通过他们的父名称(作为FirlialEet)将分类术语组分类,以便在内容创建中参考字段? :例如:Cat#1作为父和subcat#1,Subcat#2作为儿童应该作为一个字段集,猫#1为传奇(因此不可选择的)和subcat#1& Subcat#2应该在此实例集中显示。 ...

1  自定义字段存储,每个字段  ( Custom field storage per field ) 
如何更改字段的存储属性?用于改变 $field['storage'] = 'my_custom_storage'; 的正确钩子是什么? 我目前正在使用全局db变量 field_storage_default 但我发现要粗略。我不想为所有字段做这件事。 ...

12  何时使用列表(文本)或分类?  ( When to use listtext or taxonomy ) 
这可能是一个愚蠢的问题,但我很奇怪的利益在分类学术语参考字段上使用列表(文本)多个选择字段。它们似乎均填补了赋予预定多项选择选项的函数大致相同的功能,但分类有允许您在内容写入数据库后添加术语的增加的好处。 所以有一个良好的指导指南是否可以使用一个或另一个? (特别是当名单(文本)越多于分类学术语参考?)。 ...

6  管理实体的显示参考字段:如何链接到节点而不是纯文本?  ( Manage display of entity reference field how to link to nodes instead of plain ) 
我有两个内容类型:版本和场景。 释放包含作为实体参考字段的场景。我想链接到场景节点,而不是当前选项允许的节点。目前我在管理显示下的格式的唯一选择是: 标签 实体id 渲染实体。 这些显示: 纯文本实体名称 实体ID# 呈现释放节点中的场景节点 如何使drupal渲染到在实体参考字段中选择的场景节点的链接? ...

4  如何使用附加的所有字段创建实体实例?  ( How do i create an instance of an entity with all its fields attached ) 
我正在尝试使用客户地址的所有额外字段创建'commerce_customer_profile'实体的实例。 我正在进行它的FeedsProcessor,它将导入来自Magento的用户及其地址。 我不想创建一个假$ form_state数组,然后使用field_attach_submit(),因为它看起来不对。 到目...

8  在创建不同的内容类型的同时在飞行中创建内容类型的节点  ( Creating nodes of a content type on the fly while creating a different content t ) 
博览会 在Drupal 7站点上,我有两个内容类型,其中包含以下字段: 场景 场景名称 主演(演员的名称) 流媒体链接 释放(DVD版本) 标题 描述 主演(来自引用的所有场景的所有演员的名称) 多个场景(对场景内容类型的实体引用) 我的问题 是否有一个Drupal 7模块或某种技术,允...

4  如何在添加或从无限值字段中删除的项目后运行JavaScript代码?  ( How can i run javascript code after an item added or removed from an unlimited v ) 
我正在尝试在drupal 7中将一些js功能添加到无限的值字段中,它适用于页面加载,但在添加或删除项目后消失,我没有找到通知表所在的代码的方法重新加载,是时候重新初始化这些函数的时间。我该怎么办? ...

3  检测CCK字段的值是否在编辑节点时已更改  ( Detect if the value of a cck field has changed when a node is edited ) 
drupal 6.25,cck 2.9 我有一个类型事件的节点。事件节点包含几个CCK字段,允许用户将事件提交到我们的日历,该字段进入工作流程。如果用户请求其事件支持,则IT支持人员可以通过电子邮件发送。如果他们将举办食物活动,则会通知餐饮人员。 一切都适用于,除了我们可以在稍后的请求后编辑活动。如果编辑我们制作...

2  最合适的方式实现复杂配置数据?  ( Most appropriate way to implement complex configuration data ) 
我需要创建一个admin for content,它使一系列嵌套引用对我们单独的数据API。当创建新的内容项时,用户从(大)列表中选择一个或多个数据源。然后他们创建一个或多个对这些所选源的引用的列表。对于每个参考,他们从可用于该源的项目列表中选择。对于每个 datasource-item的每个,它们输入了一些文本字段...

2  在将其输出在模板文件中时如何替换URL字段中的字符串  ( How to replace a string in a url field when outputting it in a template file ) 
我为URL创建了一个新字段。在将字段输出到字段时替换URL中某些字符串的最佳方法是什么 - Field_URL.TPL.php文件? 例如,在 http://example.com/master/m/ 我需要删除"http://" 部分,并将 Master 替换为从属。 是一个字段;没有 foreach() 循环。...

0  在插入中使用CSS类的多个选择  ( Use multiple choices of css class in insert ) 
如果使用插入模块,在字段编辑中,我们可以将额外的CSS类放入插入的图像中。 我需要图像浮动。因此,我在字段编辑中键入 floatrimg ,以及css中的 .floatrimg {float:right;margin:0 0 10px 10px;} 。它可以很好。 但如果我需要在一个帖子中有2个图像:一个图像浮动右,...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.