rails 引擎安装在应用程序中时缺少 FROM 子句错误
missing FROM-clause error with rails engine mounted in application
rails 引擎中的以下范围:
module GolfApi
class Course < ActiveRecord::Base
scope :club_same_name, -> { Course.joins(:club_location).where('club_locations.name=courses.name')}
end
end
在加载引擎的应用程序中执行时出现以下错误:
PG::UndefinedTable - ERROR: missing FROM-clause entry for table "club_locations"
LINE 1: ...d" = "golf_api_courses"."club_location_id" WHERE (club_locat...
我该如何解决这个问题?
where 子句由 SQL 执行,没有使用 GolfApi 命名空间,因此需要在 where 子句中的表前面加上 golf_api_,因此范围应该是
scope :club_same_name, -> { Course.joins(:club_location).where('golf_api_club_locations.name=golf_api_courses.name')}
rails 引擎中的以下范围:
module GolfApi
class Course < ActiveRecord::Base
scope :club_same_name, -> { Course.joins(:club_location).where('club_locations.name=courses.name')}
end
end
在加载引擎的应用程序中执行时出现以下错误:
PG::UndefinedTable - ERROR: missing FROM-clause entry for table "club_locations"
LINE 1: ...d" = "golf_api_courses"."club_location_id" WHERE (club_locat...
我该如何解决这个问题?
where 子句由 SQL 执行,没有使用 GolfApi 命名空间,因此需要在 where 子句中的表前面加上 golf_api_,因此范围应该是
scope :club_same_name, -> { Course.joins(:club_location).where('golf_api_club_locations.name=golf_api_courses.name')}