2017-06-19 1 views
0

** Ich erhalte einen Fehler als undefinierte Methode, aber ich habe bereits meine Instanzvariable im Controller definiert. Ich weiß nicht, was ich tun soll ruby Ich habe ein Formular erstellt, in dem ich Details eingeben und es auf Knopfdruck speichern werde, so gibt es diese Seite neu, in der mein Formular angezeigt wird, und ich habe den Code im Controller geschrieben, der eine Nachricht blinkt, dass Daten wann gespeichert werden ich werde Sie aufundefinierte Methode `afterlogin_path 'für # <# <Klasse: 0x007f79311c5c80>: 0x007f79311c5280>

einreichen ** dies mein Controller ist

class AfterloginController < ApplicationController 


def adminview 

    end 

    def new  
    @afterlogin = Afterlogin.new 
    if @afterlogin.save 
     flash[:notice] = "description created successfully." 
    else 
     flash[:notice] = "description creation failed." 
    end 
    end 
    def regularview 
    end 
end 

das ist meine Ansicht

<%= form_for @afterlogin do |f| %> 


<p> 
    <%= f.label :UserName %> 
    <%= f.text_area :UserName %> 
</p> 
<p> 
    <%= f.label :Description %> 
    <%= f.text_area :Description %> 
</p> 
<p> 
    <%= f.label :Date %> 
    <%= f.text_feild :Date %> 
</p> 
<p> 

    <%= f.submit "Submit" %> 
</p> 

<% end %> 

** dies ist meine db Migrationsdatei

class CreateAfterlogins < ActiveRecord::Migration 

    def up 
    create_table :afterlogins do |t| 

     t.string "UserName" 
     t.text "Description" 
     t.date "Date" 
    end 
    end 
    def down 
     drop_table :afterlogins 

    end 
end 

** Dies ist Fräsdatei

Rails.application.routes.draw do 

get 'afterlogin/adminview' 

    get 'afterlogin/new' 

    get 'afterlogin/regularview' 


    get 'login/loginDetails' 
+0

Erhalten Sie diesen Fehler beim Absenden des Formulars? Zeigen Sie uns auch Ihre 'routes' – Pavan

+0

, wenn ich den Server laufen lasse und die Route eintrage, die die Seite nicht geöffnet hat, stattdessen gibt es diesen Fehler –

+0

Was produziert' Rake routes'? – nmeylan

Antwort

0

nicht definierte Methode `afterlogin_path‘ für Klasse: 0x007f79311c5c80>: 0x007f79311c5280

Ihre Routen sind nicht richtig. Wie Sie haben @afterlogin (, die eine Ressource ist), wird Schienen für seine Restfulroute suchen. Sie sollten

resources :afterlogins

in Ihrem routes.rb haben, die Ihr Problem lösen sollte. Stellen Sie außerdem sicher, dass Sie create Aktion in der Steuerung haben.

+0

, also sollte ich meine Routendatei zu Ressourcen ersetzen: afterlogins? –

+0

@HarshitJohri Nicht ersetzen! Platziere das einfach in 'routes.rb' und überprüfe es – Pavan

Verwandte Themen