2016-05-08 12 views
0

Ich bekomme immer die Fehler-Destroy-Aktion, die im messagesController nicht gefunden wird. Aber ich habe das Zerstörungsaktions-Setup, das ich nicht verstehe, warum ich diesen Nachrichtenfehler bekomme. Kann mir jemand sagen, warum ich diesen Fehler bekommen kann?Die Aktion 'destroy' konnte für MessagesController 1 nicht gefunden werden.

class MessagesController < ApplicationController 
    before_action :find_message, only: [:show, :edit, :update, :destroy] 
    def index 
    @messages = Message.all.order("created_at DESC") 
    end 

    def show 
    end 

    def new 
    @message = Message.new 
    end 

    def create 
    @message = Message.new(message_params) 
    if @message.save 
     redirect_to root_path 
    else 
     render 'new' 
    end 

    def edit 
    end 

    def update 
     if @message.update(message_params) 
     redirect_to message_path 
     else 
     render 'edit' 
     end 
    end 

    def destroy 
     @message.destroy 
     redirect_to root_path 
    end 
    end 

private 

    def message_params 
    params.require(:message).permit(:title, :description) 
    end 

    def find_message 
    @message = Message.find(params[:id]) 
    end 
end 
+0

Wenn möglich, können Sie den Stack-Trace, Ihre Routen umfassen, und die Zeile, die den Fehler ausgelöst hat der richtige Weg, sollte das sein? –

Antwort

3

Sie verfehlten einen end Verschluss für Ihre create Aktion.

def create 
@message = Message.new(message_params) 
if @message.save 
    redirect_to root_path 
else 
    render 'new' 
end 

end 

def edit 

end 
+0

danke endlich hat es geklappt! @ pyfl88 –

0

Ihre create Aktion fehlt eine end Aussage:

def create 
@message = Message.new(message_params) 
if @message.save 
    redirect_to root_path 
else 
    render 'new' 
end 

# This is defined before create is closed 
def edit 

end 
Verwandte Themen