Ich habe versucht, die Schritte zu folgen, um meine zu erhalten tun, um eine Liste zu tun machen. Alles lief reibungslos, bis ich meinen Artikel absende. Ich erhalte eine Fehlermeldung, dass „Argument in ItemsController #, falsche Anzahl von Argumenten (0 1) zu schaffen“. Es hebt die zweite Zeile unter meiner create-Methode hervor, die besagt, wo das Problem liegt. Mein Code in meinen Controllern sieht so aus.Ich kann meinen neuen Aufgabeneintrag nicht posten.
class UsersController < ApplicationController
def show
@user = params[:id].blank? ? current_user : User.find(params[:id])
@items = @user.items
end
end
class ItemsController < ApplicationController
def create
@user = User.find(params[:user_id])
@items = @user.items.create(params.require[:items].permit(:name))
redirect_to @user
end
end
Ich bin mir nicht sicher, warum es mir einen Argumentfehler gibt. Ich habe ein Video verfolgt, und ihre arbeiten, also bin ich ratlos. Auch weiß ich nicht, wenn Sie brauchen, um meine db Migrate zu sehen, aber hier ist es:
class CreateItems < ActiveRecord::Migration
def change
create_table :items do |t|
t.string :name
t.references :user, index: true, foreign_key: true
t.timestamps null: false
end
end
Ende Wenn jemand mir helfen könnte heraus, dass ich sehr geschätzt werden würde!
Versuchen '@items = @ user.items.create Wechsel (params.require [: Artikel] .permit (: name))' auf '@items = @ user.items.create (params.require (: Artikel) .permit (: name)) ' – Pavan
Dank soooooo viel !!! Ich wurde verrückt, haha. –