2015-12-04 39 views
0

不完全确定为什么:事件参数不拉动当前事件。任何有识之士将不胜感激!param丢失或值为空:事件

EventsController

class EventsController < ApplicationController 
    before_filter :requireLogin 

    def requireLogin 
     if session[:user_id] == nil 
      redirect_to "/" 
     end 
    end 

    def index 
     @events = Event.all 
    end 

    def main 
     @event = Event.find(params[:id]) 
     @current_user ||= User.find(session[:user_id]) if session[:user_id] 
     @creator = User.find(@event.createdByID) 
    end 

    def new 
     @event = Event.new 
      @current_user ||= User.find(session[:user_id]) if session[:user_id] 
     @event.createdByID = @current_user.id 
    end 

    def coming 
     @title = "coming" 
     @event = Event.find([:id]) 
     @events = @event.coming.paginate(page: params[:page]) 
     render 'show' 
    end 

    def create 
     @event = Event.new(event_params) 
     @event.createdByID = Rails.application.config.currUserID 
     if @event.save 
      redirect_to '/event' 
     else 
      render 'new' 
     end 
    end 

    def edit 
     @event = Event.find(params[:id]) 
     if @event.update_attributes(event_params) 
      redirect_to action: "show" 
      # Handle a successful update. 
      else 
      render 'edit' 
     end 
    end 

    def destroy 
     @event = Event.find(params[:id]).destroy 
     redirect_to(events_path) 
    end 

    private 
    def event_params 
     params.require(:event).permit(:event_name, :place, :time_of) 
    end 
end 

编辑观点

<!DOCTYPE html> 
<div class="edit-event"> 
    <div class="container"> 

    <h2>Tell us about your dog!</h2> 
    <div class="edit-area"> 
     <%= form_for(current_user) do |u| %> 
     <div class="field"> 
      Event Name: 
      <%= u.text_field :event_name %> 
      Event Place: 
      <%= u.text_field :place %> 
      <%= u.submit "Submit"%> 
     </div> 
     <% end %> 
    </div> 

</div> 

回答

0

不知道你究竟是 “拉动当前事件” 的意思,但你的东东d在您的表单中使用@event

<%= form_for(@event) do |u| %> 

-

删除编辑和与此

def edit 
    @event = Event.find(params[:id]) 
    end 


    def update 
    @event = Event.find(params[:id]) 
    respond_to do |format| 
     if @event.update(event_params) 
     format.html { redirect_to @event }  
     else 
     format.html { render :edit } 
     end 
    end 
    end 
+0

更换后,我改变了我的代码,以反映这个^,我仍然收到同样的错误。 的ActionController :: parameterMissing在EventsController#编辑 参数是丢失或为空值:事件 在事件控制线强调: params.require(:事件).permit(:EVENT_NAME,:地方:time_of) if @ event.update_attributes(event_params) – BNYCS92

+0

更新了我的答案。 PLZ将此错误添加到您的问题主体。 – kirqe

+0

更改编辑方法以反映上述代码并添加更新方法,但现在再次出现编辑视图表单的问题 错误事件错误视图 表单中的第一个参数不能包含零或为空 – BNYCS92

相关问题