嗨,我在ROR开发中的新功能,我只是想知道为什么我的应用程序上升
"undefined method `menu'
我似乎正确地将我的模特联系起来
我想显示一个预订保留的菜单,并在该菜单中显示其食谱,但它上升了不受欢迎的方法'菜单'
package_line_item.rb
belongs_to :menu
belongs_to :reservation
reservation.rb
has_one :reservation_package
belongs_to :service
has_many :reservation_function_rooms
has_many :package_line_items
has_many :menus , :through => :package_line_items, :uniq => true
has_many :function_rooms, :through =>:reservation_function_rooms
menu.rb
has_many :package_line_items
has_many :menu_recipes
has_many :recipes, :through => :menu_recipes, :uniq => true
belongs_to :menu_category
package_line_item_controller.rb
def index
@package_line_items = PackageLineItems.all
end
def show
@reservation = Reservation.includes(:package_line_items => :menu).find(params[:id])
end
def new
@reservation = Reservation.find(params[:reservation_id])
@package_line_item = @reservation.package_line_items.build
end
def create
@reservation = Reservation.find(params[:reservation_id])
@reservation.package_line_items.build(params[:package_line_item])
if @package_line_item.save
redirect_to @reservation ,:notice => "added menu"
end
的routes.rb
resources :services
resources :reservations do
resources :reservation_packages
resources :reservation_function_rooms
resources :packages
resources :package_line_items
resources :package_crews
end
resources :function_rooms
resources :crews
resources :menu_categories
resources :menus do
resources :menu_recipes
end
ActiveAdmin.routes(self)
devise_for :admin_users, ActiveAdmin::Devise.config
resources :recipe_categories
resources :recipes
package_line_item / show.html.erb
<p id="notice"><%= notice %></p>
<%= @reservation.package_line_items.menu.name%>
如果需要其他文件,请随时向我表示感谢您对我们的更多权力感谢
答案 0 :(得分:0)
可能是因为“menu”是ActiveAdmin DSL中的一种方法。出于这个原因,我对一个名为“Page”的模型有一个问题。尝试重命名模型,看看会发生什么。