Ich fange gerade an, mit Rails (mit Rspec und Shoulda Matchers) zu spielen, um einen Demo-Blog zu erstellen.Versuchen zu verstehen, warum validates_presence_of test fehlschlägt
Ich habe gerade erst angefangen und mein erster Test scheitert, aber ich kann nicht verstehen warum.
Ich glaube, ich habe alles richtig eingerichtet, aber wenn ich versuche, zu bestätigen, dass ein Titel auf meinem Artikel Modell vorhanden ist, aber es gibt einen Fehler
Shoulda::Matchers::ActiveModel::AllowValueMatcher::AttributeDoesNotExistError:
The matcher attempted to set :title on the Article to nil, but that
attribute does not exist.
Mein Modell sieht wie folgt aus ...
class Article < ApplicationRecord
# attr_accessor :title
validates_presence_of :title
end
und mein Test ...
require 'rails_helper'
RSpec.describe Article do
it { should validate_presence_of :title }
end
Wenn ich Kommentar- der attr_accessor aus dann den Test vergeht, aber ich verstehe, dass es bei Rails nicht erforderlich ist.
Was mache ich falsch?
Perfect danke @ Hugh-Middleton, ich hatte meine Migrationsdatei aktualisiert, aber nicht über das Schema erkannt. War mir nicht sicher, woher es die Attribute gelesen hatte. – bencarter78
Keine Sorgen. Ja, solange Sie Ihre Migrationen ausführen, wird 'schema.rb' automatisch aktualisiert. –