Ruby on rails 每个类别都有不同的注册模式

Ruby on rails 每个类别都有不同的注册模式,ruby-on-rails,ruby,sqlite,ruby-on-rails-5,registration,Ruby On Rails,Ruby,Sqlite,Ruby On Rails 5,Registration,我试图建立我的投资组合,我正在开发一个网上书店的书籍。每个用户都可以注册自己的书,其中书是不同的型号。我想为不同类别(和子类别)制作多个注册表,但我不知道如何制作 我是RubyonRails新手,我试着用谷歌搜索,但我没有发现任何有用的东西。此外,由于我没有足够的知识,我真的不知道该搜索什么。有人能举个例子吗?我真的很想弄明白 我的主要问题之一是处理我的数据库。因为每个类别都有自己的形式,所以在我的book表中应该有不同的列。同时,我读到专栏可能会影响网站速度。我是否必须为每个类别创建一个表,或

我试图建立我的投资组合,我正在开发一个网上书店的书籍。每个用户都可以注册自己的书,其中书是不同的型号。我想为不同类别(和子类别)制作多个注册表,但我不知道如何制作

我是RubyonRails新手,我试着用谷歌搜索,但我没有发现任何有用的东西。此外,由于我没有足够的知识,我真的不知道该搜索什么。有人能举个例子吗?我真的很想弄明白

我的主要问题之一是处理我的数据库。因为每个类别都有自己的形式,所以在我的book表中应该有不同的列。同时,我读到专栏可能会影响网站速度。我是否必须为每个类别创建一个表,或者我可以简单地添加许多列并将默认值设置为nil

我发现了一些资源:


听起来您的第一个问题是如何设计数据库。虽然从速度的角度来看,我不担心有太多的列(需要有很多列和行才能成为问题),但有大量的空列表明数据库设计有缺陷

我建议使用一个包含公共字段(id、标题、ISBN、主要作者或主要作者id、概要、类别类型)的
图书
表。然后,您可以拥有与书籍使用1:1关系的相关表格,例如
Book\u engineering
Book\u law
,等等

当您有一个新的表单页面时,您将不知道要显示哪个表单,因为用户尚未输入任何数据。也许您可以让他们设置公共图书数据,当他们从下拉类别菜单中选择时,您将呈现特定于类别的字段作为响应。提交表单时,您的
插入
将被添加到
图书
表以及当时确定的子类别表中


最后,要考虑的另一件事是,在输入任何详细信息之前,您是否可以知道图书类别。例如,如果您有一个链接/按钮,上面写着“单击此处进入一本法律书”,那么您可以重定向到查询字符串为
?category_type=4
的表单,并立即呈现所有字段(包括子表字段)。这确实是一个UI设计的问题。可能值得考虑的是,是否允许用户更改类别类型,在这种情况下,您必须删除一个子表行并添加另一个子表行。

我真的不知道您的问题是否与关联(表之间的关系)有关,如果看到:

如果更多的是关于嵌套表单(例如,在模型之间创建关联,然后同时创建),请参见:

(如果您在网上搜索嵌套模型或嵌套表单指南,您可能会找到其他更好的教程)


希望这对您有所帮助。

(我不使用任何Rails和代码,因为我不熟悉它。无论如何,我认为首先正确使用数据库是有价值的,然后您的设计/模型就可以解决这个问题了)。非常感谢您,我会听从您的建议!再次感谢您的帮助。真的很感激!:)别担心@Anthony
:-)