Le #new_record? fonction détermine si un enregistrement a été enregistré. Mais c’est toujours faux dans le hook after_save . Y a-t-il un moyen de déterminer si l’enregistrement est un enregistrement nouvellement créé ou un ancien depuis la mise à jour? J’espère ne pas utiliser un autre rappel tel que before_create pour définir un indicateur dans […]
Dans mon programme actuel de rails quand j’utilise quelque chose comme user = User.find(10) Lorsqu’il n’y a pas d’utilisateur avec ID = 10, j’aurai une exception comme: ActiveRecord::RecordNotFound: Couldn’t find User with ID=10 Puis-je obtenir un résultat nul au lieu de faire une exception alors quand je fais quelque chose comme: unless user = Challenge.find(10) […]
À partir de Rails 4, Model.scoped est maintenant obsolète. DEPRECATION WARNING: Model.scoped is deprecated. Please use Model.all instead. Mais, il y a une différence entre Model.scoped et Model.all , à savoir que scoped.scoped renvoie une étendue, alors que all.all exécute la requête. Sur les rails 3: > Model.scoped.scoped.is_a?(ActiveRecord::Relation) => true Sur les rails 4: > […]
J’ai un résultat ActiveRecord d’une opération de recherche: tasks_records = TaskStoreStatus.find( :all, :select => “task_id, store_name, store_region”, :conditions => [“task_status = ? and store_id = ?”, “f”, store_id] ) Maintenant, je veux convertir ces résultats en un tableau de hachages comme celui-ci: [0] -> { :task_d => 10, :store_name=> “Koramanagala”, :store_region=> “India” } [1] -> […]
Il y a le code suivant: class Product < ActiveRecord::Base validates :title, :description, :image_url, presence: true validates :price, numericality: {greater_than_or_equal_to: 0.01} validates :title, uniqueness: true validates :image_url, allow_blank: true, format: { with: %r{\.(gif|jpg|png)$}i, message: 'URL must point to GIT/JPG/PNG pictures' } end Cela fonctionne, mais quand j’essaie de le tester en utilisant “rake test”, j’attrape […]
J’ai un tableau d’objects, appelons-le un Indicator . Je veux exécuter les méthodes de classe Indicator (celles de la variété def self.subjects , les étendues, etc.) sur ce tableau. La seule façon dont je sais exécuter des méthodes de classe sur un groupe d’objects consiste à les faire devenir une relation ActiveRecord :: Relation. Je […]
Donc, j’effectue une requête sur la firebase database et j’ai un tableau complet d’objects: @attachments = Job.find(1).attachments Maintenant que j’ai un tableau d’objects, je ne veux pas effectuer une autre requête de firebase database, mais j’aimerais filtrer le tableau en fonction du type de fichier de l’object Attachment file_type pour avoir une liste de attachments […]
Selon Rails doc: http://guides.rubyonrails.org/migrations.html “Active Record suit les migrations qui ont déjà été effectuées. Il vous suffit de mettre à jour votre source et de lancer rake db: migrate”. Comment ActiveRecord fait-il cela? Où Active Record stocke-t-il les données? Je pense que cela pourrait être stocké dans la firebase database elle-même? Dans une table quelque […]
J’essaie d’écraser une méthode getter pour un modèle ActiveRecord. J’ai un atsortingbut appelé name dans la Category du modèle, et j’aimerais pouvoir faire quelque chose comme ceci: def name name_trans || name end Si l’atsortingbut name_trans n’est pas nul, renvoyez-le, sinon, retournez l’atsortingbut name . Comment pourrais-je faire ça? Cela devrait alors s’appeler normalement comme […]
En utilisant Rails 3.2, quel est le problème avec ce code? @reviews = @user.reviews.includes(:user, :reviewable) .where(‘reviewable_type = ? AND reviewable.shop_type = ?’, ‘Shop’, ‘cafe’) Il soulève cette erreur: Impossible de charger avec impatience l’association polymorphe: révisable Si je supprime le reviewable.shop_type = ? condition, ça marche. Comment puis-je filtrer sur le type reviewable_type et reviewable.shop_type […]