gpt4 book ai didi

ruby-on-rails - Resue 主要应用程序模型和数据库与其他 Rails 应用程序

转载 作者:行者123 更新时间:2023-11-29 11:37:18 25 4
gpt4 key购买 nike

我有一个 rails(3) app(Master),它有架构、模型和数据库。我还有另一个 rails(5) 应用程序(服务),它没有任何模型,但我正在使用(主)应用程序数据库。

服务应用配置

common_db:
adapter: postgresql
database: 'blog'
username: 'username'
password: 'password'
host: 'localhost'
pool: '10'

application_record.rb

 class ApplicationRecord < ActiveRecord::Base
self.abstract_class = true
establish_connection
Rails.configuration.database_configuration["common_db"]
end

然后我在服务应用程序中添加了一个相同的模型,然后尝试从主应用程序中获取一些值

class post < ApplicationRecord
has_many :comments
scope :article_comments, lambda { |a| select("created_at").joins('INNER JOIN comments on post.id = comments.post_id').where('article_id = ?',
a) }
end

如果我在这里调用 Post.article_comments 加入,但一切都不起作用,这绝对不会起作用,因为我们在服务应用程序中没有任何关联或任何模型。

基本上我的问题是

1) 我可以在服务应用程序中重用这个主数据库模型吗?

2) 如果我可以使用它,那么我可以在所有协会中使用它吗 例子: 服务应用程序中的 Blog.comments .....

3)还有没有其他好的方法可以重用它,我也看到了一些文章 https://hiltmon.com/blog/2013/10/14/rails-tricks-sharing-the-model/ , 这将是一件好事吗?

最佳答案

请记住,关系是在模型中设置的,您可以拥有相同的数据库,但需要拥有具有关系的模型才能使其正常工作。

你放在第 3 点的链接,他们刚刚创建了一个 rake 任务来将一些文件从一个应用程序复制到另一个应用程序,这个复制模型是为了在那里建立关系并使其工作。它与上面的概念相同,但是有一个 rake 任务来制作文件的副本。

关于ruby-on-rails - Resue 主要应用程序模型和数据库与其他 Rails 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53130268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com