Bonjour tous,objet refuse d'enregistrer les modifications dans Rails CISR
J'ai une association que je travaille, et pour une raison quelconque, je ne peux pas l'obtenir pour enregistrer les modifications à l'objet question quand je débogue dans IRB. Je me demandais si quelqu'un pouvait signaler mon problème.
Voici l'association:
class User < ActiveRecord::Base
has_and_belongs_to_many :affiliates
has_one :managed_affiliate, :class_name => "Affiliate", :foreign_key => "manager_id"
end
class Affiliate < ActiveRecord::Base
has_and_belongs_to_many :users
belongs_to :manager, :class_name => "User"
#The affiliates table has a foreign key field of manager_id
end
Quand je lance la CISR, je peux prendre un User.first et Affiliate.first. Je peux très bien définir le managed_affiliate de l'utilisateur. Cependant, quand j'économise, cela ne se reflète pas du tout dans l'affilié - il n'a pas de manager. De même, je peux très bien définir le gestionnaire de l'affilié (Affiliate.first.manager = User.first). Il revient comme si tout allait bien, mais quand je vais le sauvegarder retourne simplement "faux". Si j'activer la fonction d'enregistrement de la CISR, c'est la sortie:
SQL (0.1ms) BEGIN
SQL (0.2ms) ROLLBACK
est-il une raison évidente pour laquelle cette association ne sauvera pas correctement?
De plus, voici le schéma de la table des filiales:
create_table "affiliates", :force => true do |t|
t.string "name"
t.string "website"
t.integer "market_id"
t.datetime "created_at"
t.datetime "updated_at"
t.string "logo_file_name"
t.string "logo_content_type"
t.integer "logo_file_size"
t.boolean "track_subs"
t.integer "manager_id"
end
Merci pour toute aide.
Cela a dû avoir un rapport avec les validations, parce que quand j'ai écrit un formulaire rapide pour ajouter un gestionnaire via un navigateur, cela fonctionne comme un champion. Merci! –