我'收到此错误:未定义的方法`model_path”为#<#<Class:>更新方法
undefined method `invite_path' for #<#<Class:0x9396d38>:0x8f8fb30>
我控制器
class ConfirmationsController < ApplicationController
skip_before_action :verify_authenticity_token
def index
@confirmation = Invite.joins(:user).select('invites.horario_desde, invites.horario_hasta, invites.estado, users.email, users.nombre, users.apellido, users.telefono, invites.complejo')
.where(:hash_id => filter_params[:hash_id],:user_id => filter_params[:user_id]).first
end
(它只有一个记录)
我的路线
get '/confirmations' => 'confirmations#index'
post '/confirmations' => 'confirmations#update'
而我的观点
<%= form_for @confirmation do |confirmation|%>
<p>Horario: de <%= confirmation.horario_desde %> a <%= confirmation.horario_hasta %></p>
<p>Email: <%= confirmation.email %></p>
<p>Teléfono: <%= confirmation.telefono %></p>
<%=f.submit 'Confirm'%>
<%=f.submit 'Cancel'%>
<%end%>
的想法是从我的控制器显示一些数据(@confirmations),如果用户点击“确认”应该更新我与特定的状态模型。但我甚至无法使这个表单起作用。
还有更好的方法吗?
由于
对'select'过分指定通常是一个坏主意,使用'includes'加入相关模型会更安全。我认为你的非标准模型实例混淆了'form_for'。 – tadman