Ruby on rails 创造一个不同的“世界”;体裁;我的网站(即,我有一个stackoverflow等价物,我想创建一个serverfault等价物)
我的网站,解释说唱歌词。我想创建一个新网站,Rock Genius,解释摇滚歌词——否则它将是相同的(相同的布局,相同的DB模式;就像Serverfault是Stackoverflow) 最好的方法是什么 方法1:分叉代码 拨出Rap Genius代码,更改相关部分(例如,“Rap”->“Rock”),创建一个新数据库,然后进城Ruby on rails 创造一个不同的“世界”;体裁;我的网站(即,我有一个stackoverflow等价物,我想创建一个serverfault等价物),ruby-on-rails,fork,Ruby On Rails,Fork,我的网站,解释说唱歌词。我想创建一个新网站,Rock Genius,解释摇滚歌词——否则它将是相同的(相同的布局,相同的DB模式;就像Serverfault是Stackoverflow) 最好的方法是什么 方法1:分叉代码 拨出Rap Genius代码,更改相关部分(例如,“Rap”->“Rock”),创建一个新数据库,然后进城 优点:可以让它快速工作 缺点:在两个应用程序中都添加一个功能会有点痛苦。此外,不可能让Rap Genius在DB级别访问Rock Genius的数据 方法2:将其保
- 优点:可以让它快速工作
- 缺点:在两个应用程序中都添加一个功能会有点痛苦。此外,不可能让Rap Genius在DB级别访问Rock Genius的数据
rapgenius.com
,请将站点名称
常量设置为“rapgenius”
。在面向用户的实体(歌曲、博客文章等)上创建一个类型
字段,并根据站点名称更新我的查询以使用正确的类型
在面向用户的字符串之上创建一个抽象层,我可以编写
,而不是欢迎来到Rap Genius
并将欢迎消息()
考虑到站点名称
- 优点:灵活性强
- 缺点:很多工作李>
想法?第二种方法对我来说更合适 您已经强调了主要的优点和缺点-这肯定会有更多的工作,但维护起来会更加友好。有没有第三、第四、第五个站点的机会?如果是这样,毫无疑问,这是正确的选择 您还可以更轻松地共享用户帐户、声誉和任何其他基于社区的功能 基于域名,“翻译”静态文本的Rails
i18n
stuff可能值得一看。这样可以避免为每个要显示的字符串编写帮助器方法
然后你应该能够很容易地“特许”网站-添加静态字符串的翻译,新域的句柄,可能还有一些特定于网站的图像或CSS,你就完成了