Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据库模式移到drupal_Drupal_Drupal 6_Database - Fatal编程技术网

将数据库模式移到drupal

将数据库模式移到drupal,drupal,drupal-6,database,Drupal,Drupal 6,Database,我正在创建一个web应用程序,我只想知道如何考虑来自MVC背景的Drupal数据库。 我有一些表格来表示人们的数据,比如SSN、名字、姓氏、邮政编码、地址、语言、位置。现在在前端,我想创建一个表单来填充一组主题(人)的信息。我对数据库进行了规范化,这样邮政编码就有了自己的表(带有指向person表的外键链接)。“person”表包含诸如名字、姓氏、地址等内容。。。“language”表将使用不同的语言缩写(同样,将外键返回到person表) 我想知道如何将这样的东西移动到drupal的模式中。我

我正在创建一个web应用程序,我只想知道如何考虑来自MVC背景的Drupal数据库。 我有一些表格来表示人们的数据,比如SSN、名字、姓氏、邮政编码、地址、语言、位置。现在在前端,我想创建一个表单来填充一组主题(人)的信息。我对数据库进行了规范化,这样邮政编码就有了自己的表(带有指向person表的外键链接)。“person”表包含诸如名字、姓氏、地址等内容。。。“language”表将使用不同的语言缩写(同样,将外键返回到person表)


我想知道如何将这样的东西移动到drupal的模式中。我知道我可以创建自己的表,并将它们链接回“node”表,然后我想构建我的表单以接受用户输入……但这是建议的方法吗?我在看webform,但它似乎应该用于数据库未规范化且所有内容都存储在一个大表中的更简单的表单。我不确定,但我很想听听你们的想法……如果你们能给我指一些资源,那就太好了。

Drupal非常灵活,您可以创建任何需要的表,然后编写代码将它们链接回节点表。然而,这样做意味着您最终会得到大量特定于您的模式的代码,并且与其他Drupal模块的互操作性不强

如果你主要以Drupal的方式做事,你会发现你和Drupal相处得更好。并且只选择一个非常定制的解决方案,其中您正在做一些标准Drupal模块没有涵盖的事情

例如,您可能会发现,就有关人员的标准信息而言,这些信息满足您的需求。模块(特别是用户位置)将涵盖用户地址。通过使用这些模块,您将来更有可能找到与它们一起工作的其他模块,总体而言,您将发现要编写的代码更少


您可能会发现一件有用的事情是将现有数据导入Drupal。

听起来您只是在存储信息,主题(人员)不会是Drupal站点的用户

利用node和CCK模块来实现这一点将消除大部分开发工作。例如,您的每个表(例如,Person、Zip Code、Language)都可以由包含多个字段的内容类型表示。外键将由节点引用字段表示。因此,Person内容类型可能有一个或多个对类型为Language的节点的节点引用

似乎使用得很好(至少在10个不同的Drupal站点中使用),但编写自己的迁移脚本可能更容易,但我对您的情况、Drupal的API或迁移模块都不熟悉


默认情况下,节点引用字段显示为指向引用节点的链接,但可以设置主题以加载和显示引用节点(例如,在个人节点中显示语言信息)。这里有一个方便的例子,说明了如何设置节点引用字段的主题,以加载并有选择地显示引用节点的内容。

来自MVC背景,您可能不喜欢Drupal在DB中存储数据的方式

虽然提到了配置文件模块,但我发现将内容配置文件和CCK结合起来可以获得更大的灵活性


我以前写过一些从Coldfusion到Drupal的迁移脚本,它并不太复杂。

是用户还是客户?谢谢Jeremy…profile and location模块似乎是为已经注册(作为站点用户)的用户设计的。我需要一个表单来捕获人员(受试者)数据。但是谢谢你的评论…这给了我更多的洞察力。我也可以使用这些模块中的一些表。好的,所以节点引用基本上是“外键”链接-有意义..谢谢