2017-11-11 220 views
0

我已经学习Ruby on Rails很长一段时间了,并且已经构建了几个玩具应用程序。我参加过很多课程(如Hartl,Code School,Udemy等)。现在我正在研究一个相当复杂的宠物项目 - 许多模型和关系。如何在更复杂的Rails应用程序中考虑模型和关系?

这是我的问题:我如何从模型和关系角度思考一个复杂的应用程序?在我看来,应该有一些可视化的方法来对所有这些进行建模,但是我没有在任何课程中看到过有关这种建模的讨论。当然,Rails指南中有非常简单的图表,但我如何将它扩展到更复杂的东西?或者,我是否让这个过于复杂?我是否刚刚开始编码模型和关系,并查看它对我的影响?看起来这种特殊的方法很容易让我进入一个角落,如果我把自己描绘成一个角落,就必须从头开始。

是否有工具或博客文章可以帮助我?

(注:我也张贴在Reddit.Com/r/Rails了这个问题https://www.reddit.com/r/rails/comments/7c9zbf/how_to_think_about_rails_web_application/

+1

我不知道你希望得到什么答案。关于rails的书籍,视频,博客等清单?指向数据库图表教程的链接?关于如何设计应用程序的个人意见?这不是一个非常具体的问题,所以我不知道如何回答。 –

回答

3

这听起来像你追求的是一个架构设计师。我会在这篇文章的底部连接一个。模式设计器将允许您可视化应用程序中的所有关系,并查看一个模型如何连接到另一个模型。它们在编写复杂的数据库查询中非常有用。我附上了一个相当简单的设计示例,只是为了让您了解它们的作用。您还可以添加模型在设计中的所有列,我通常只是将它用于关系。 http://ondras.zarovi.cz/sql/demo/ schema expample

1

完全基于我的经验/意见了......

最终你会改变你的数据库设计几次为您打造您的应用程序。

我会从白板开始,然后考虑使用架构设计器作为@aram提到的。

当你看到大局时,从今天的功能需要的关系开始。您可以继续参考原始设计,以便您可以看到更大的图像,但是您不希望在需要之前过度占用体系结构,因为它会改变。

在您编写一些代码并构建这些关系之后,您可以使用rails-erd gem以编程方式生成应用程序的模式来检查自己。

+0

虽然我给了@Aram的答案,但我想说“谢谢”你的回答,特别是提到rails-erd Gem。真的很高兴看到我的模型作为图! –

相关问题