Articles of activerecord

“AVERTISSEMENT: impossible d’atsortingbuer en masse des atsortingbuts protégés”

J’ai utilisé des techniques RESTful pour générer un modèle (en fait, j’utilise Devise gem, qui le fait pour moi), et j’ai ajouté de nouveaux champs appelés first_name et last_name au modèle. La migration s’est bien passée. J’ai ajouté attr_accessor: first_name,: last_name au modèle et je m’attendais à ce que cela fonctionne. Mais quand j’essaie d’assigner […]

Rails 3 sauter les validations et rappels

J’ai un modèle particulièrement complexe avec des validations et des callbacks définis. L’entreprise a maintenant besoin d’appeler un scénario particulier dans lequel l’ajout d’un nouvel enregistrement nécessite l’ignorance des validations et des rappels. Quelle est la meilleure façon de faire cela?

ActiveRecord OU requête Notation de hachage

Je sais qu’il y a 3 notations principales pour fournir des arguments à la méthode where ActiveRecord: Pur fil Tableau Hacher Spécifier and pour la méthode where méthode est simple: # Pure Ssortingng notation Person.where(“name = ‘Neil’ AND age = 27”) # Array notation Person.where([“name = ? AND age = ?”, ‘Neil’, 27]) # Hash […]

Rechercher des lignes avec plusieurs champs en double avec Active Record, Rails & Postgres

Quelle est la meilleure façon de trouver des enregistrements avec des valeurs en double sur plusieurs colonnes à l’aide de Postgres et d’Activerecord? J’ai trouvé cette solution ici : User.find(:all, :group => [:first, :email], :having => “count(*) > 1” ) Mais cela ne semble pas fonctionner avec les postgres. Je reçois cette erreur: PG :: […]

Rails ActiveRecord: joint avec LEFT JOIN au lieu de INNER JOIN

J’ai ce code User.find(:all, :limit => 10, :joins => :user_points, :select => “users.*, count(user_points.id)”, :group => “user_points.user_id”) qui génère la suite sql SELECT users.*, count(user_points.id) FROM `users` INNER JOIN `user_points` ON user_points.user_id = users.id GROUP BY user_points.user_id LIMIT 10 est-il possible de faire LEFT JOIN au lieu de INNER JOIN autrement que User.find_by_sql et manuellement […]

Enregistrement de plusieurs objects en un seul appel dans des rails

J’ai une méthode dans les rails qui fait quelque chose comme ça: a = Foo.new(“bar”) a.save b = Foo.new(“baz”) b.save … x = Foo.new(“123”, :parent_id => a.id) x.save … z = Foo.new(“zxy”, :parent_id => b.id) z.save Le problème est que cela prend plus de temps et plus le nombre d’entités que j’ajoute augmente. Je soupçonne […]

Vérifiez si l’enregistrement a été détruit dans les rails

il y a donc record.new_record? Pour vérifier si quelque chose est nouveau Je dois vérifier si quelque chose est sur le sharepoint sortir. record = some_magic record.destroy record.is_destroyed? # => true Quelque chose comme ca. Je sais que détruire détruit l’object, si gelé? sorte de travaux, mais y a-t-il quelque chose explicitement pour cette tâche?

accepte la validation d’association enfant échouée

J’utilise accept_nested_atsortingbutes_for dans l’un de mes modèles Rails et je veux enregistrer les enfants après la création du parent. Le formulaire fonctionne parfaitement, mais la validation échoue. Pour simplifier, imaginez ce qui suit: class Project < ActiveRecord::Base has_many :tasks accepts_nested_attributes_for :tasks end class Task < ActiveRecord::Base belongs_to :project validates_presence_of :project_id validates_associated :project end Et je […]

Interroger MySQL avec CodeIgniter, en sélectionnant des lignes dont le champ est NULL

J’utilise la classe Active Record de CodeIgniter pour interroger la firebase database MySQL. Je dois sélectionner les lignes dans une table où un champ n’est pas défini sur NULL: $this->db->where(‘archived !=’, ‘NULL’); $q = $this->db->get(‘projects’); Cela renvoie uniquement cette requête: SELECT * FROM projects WHERE archived != ‘NULL’; Le champ archived est un champ DATE […]

Dans les rails, comment puis-je savoir ce qui a provoqué l’échec d’un fichier .save, autre que les erreurs de validation?

J’ai un modèle ActiveRecord qui retourne true de valid? (et .errors est vide), mais retourne false partir de save() . Si l’instance de modèle est valide, comment puis-je trouver ce qui cause l’échec de la sauvegarde?