gpt4 book ai didi

mysql - Rails 中的 SQL 连接

转载 作者:行者123 更新时间:2023-11-30 23:43:03 26 4
gpt4 key购买 nike

尝试使用 Rails 中的现有数据库。下面的代码在 MySQL 控制台中运行得很好:

select title,blog_name from exp_weblog_titles JOIN exp_weblogs ON exp_weblog_titles.weblog_id = exp_weblogs.weblog_id LIMIT 1;

+------------+---------------+
| title | blog_name |
+------------+---------------+
| What We Do | chicago_pages |
+------------+---------------+
1 row in set (0.00 sec)

但是在 Rails 控制台中,这是我得到的:

>> @titles = Title.find_by_sql("select title,blog_name from exp_weblog_titles JOIN exp_weblogs ON exp_weblog_titles.weblog_id = exp_weblogs.weblog_id LIMIT 1")
=> [#<Title title: "What We Do">]

我看到过这样一个事实的典故,即出于某种原因,Rails 将只在控制台模式下显示第一个表中的列,而不会使用任何技巧。谁能告诉我如何访问连接的属性?

最佳答案

我不完全明白你所说的联合属性是什么意思。但是,我想您需要的是:

class Title < ActiveRecord::Base
belongs_to :weblog
end

class Weblogs < ActiveRecord::Base
has_many :titles
end

您可以通过以下方式获取博客的标题属性

@weblog = Weblog.find(...) 
@webglog.title.attributes

另一只手

@titles = Title.find_all
@titles[0].weblog.attributes

希望对你有帮助

关于mysql - Rails 中的 SQL 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1179200/

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