Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.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
Ruby on rails RoR,我应该如何建模?_Ruby On Rails_Ruby_Server Side - Fatal编程技术网

Ruby on rails RoR,我应该如何建模?

Ruby on rails RoR,我应该如何建模?,ruby-on-rails,ruby,server-side,Ruby On Rails,Ruby,Server Side,我之前问过这个问题,但我很含糊,很多人建议,因为我刚刚开始学习Ruby和RoR,也许我最好先关注“Hello,World!”。我很感激答案是诚实的,但这是我项目的一部分,所以我必须完成它。我想把它做好,这样以后问题就少了 我想做的是: 我正在制作一个web应用程序,它基本上允许用户创建 桌子它们命名表并添加多个列(字段)。然后他们 添加 条目(行),就像典型的表一样 例如,用户可以创建一个名为“High Scores”的表。然后 添加字段“姓名”、“积分”、“成就”。这三个将是 柱。然后他们可以

我之前问过这个问题,但我很含糊,很多人建议,因为我刚刚开始学习Ruby和RoR,也许我最好先关注“Hello,World!”。我很感激答案是诚实的,但这是我项目的一部分,所以我必须完成它。我想把它做好,这样以后问题就少了

我想做的是:

我正在制作一个web应用程序,它基本上允许用户创建 桌子它们命名表并添加多个列(字段)。然后他们 添加 条目(行),就像典型的表一样

例如,用户可以创建一个名为“High Scores”的表。然后 添加字段“姓名”、“积分”、“成就”。这三个将是 柱。然后他们可以添加一个条目,例如,“John”,“123”, “黄金”

如何使用活动记录基子类对此进行建模?基本上,从我所拥有的 从到目前为止的教程中了解到,这些模型具有预先确定的字段。现在, 我有动态场


谢谢您的帮助。

这取决于您的要求。如果这不是应用程序的特定目标,那么不应该为每个用户创建新表。如果您只希望用户在网页上的“表”中输入数据,您可以在四个表中建模一个表,一个用于
TableName
,一个用于
ColumnName
,一个用于
TableEntry
,另一个用于名为
EntryValue
的TableEntry中的每列


为此创建视图很困难,但这是可能的。

我还没有尝试过,但您应该能够轻松地使用ActiveRecord。对于具有预先确定的字段的模型,这并不是真正准确的。ActiveRecord根据数据库表本身确定字段名——从这个意义上说,它们是“预先确定的”。另外,当您更改模式时,可能需要重新加载models/other.rb文件。这可能对您的此类数据模型有所帮助。最好使用MongoDb而不是SQLB。最好知道您打算如何处理这些用户创建的数据。从您给出的示例中,我建议使用像Redis这样的键值存储,但是如果不知道您打算如何使用它,就很难说了。