Il record attivo è un modello che combina la logica del dominio con l'astrazione della memoria in un singolo oggetto. Utilizzare questo tag per domande sul modello, [rails-activerecord] per domande sul framework ORM di Rails.
Ho questa ricerca in Rails 3: Note.where(:user_id => current_user.id, :notetype => p[:note_type], :date => p[:date]).order('date ASC, created_at ASC') Ma ho bisogno che la :date => p[:date]condizione sia equivalente :date > p[:date]. Come posso fare questo? Grazie per aver letto.
Voglio creare un migrationin Rails, facendo riferimento a un'altra tabella. Di solito, farei qualcosa come: add_column :post, :user, :references Questo crea una colonna denominata user_idin poststable. Ma cosa succede se, invece di user_id, voglio qualcosa di simile author_id? Come lo posso fare?
Sto cercando di capire cos'è has_many :throughe quando usarlo (e come). Tuttavia, non lo capisco. Sto leggendo Beginning Rails 3 e ho provato a usare Google, ma non riesco a capire.
gente, Voglio essere sicuro di averlo capito correttamente. E per favore ignora il caso dell'ereditarietà qui (SentientBeing), cercando invece di concentrarti sui modelli polimorfici in has_many: attraverso le relazioni. Detto questo, considera quanto segue ... class Widget < ActiveRecord::Base has_many :widget_groupings has_many :people, :through => :widget_groupings, :source => :person, :conditions …
Vorrei vedere l'istruzione SQL generata da una determinata query ActiveRecord. Riconosco di poter ottenere queste informazioni dal registro dopo che la query è stata inviata, ma mi chiedo se esiste un metodo che può essere richiamato e ActiveRecord Query. Per esempio: SampleModel.find(:all, :select => "DISTINCT(*)", :conditions => ["`date` > #{self.date}"], …
Voglio fare qualcosa come: SELECT * FROM USER WHERE NAME LIKE '%Smith%'; Il mio tentativo ad Arel: # params[:query] = 'Smith' User.where("name like '%?%'", params[:query]).to_sql Tuttavia, questo diventa: SELECT * FROM USER WHERE NAME LIKE '%'Smith'%'; Arel avvolge correttamente la stringa di query "Smith", ma poiché questa è un'istruzione LIKE …
Quando eseguo query (ad es. MyModel.where(...)O record.associated_things) nella console, come posso vedere le query di database effettive in esecuzione in modo da poter ottenere una maggiore comprensione di ciò che sta accadendo?
Ho un risultato ActiveRecord di un'operazione di ricerca: tasks_records = TaskStoreStatus.find( :all, :select => "task_id, store_name, store_region", :conditions => ["task_status = ? and store_id = ?", "f", store_id] ) Ora voglio convertire questi risultati in una serie di hash come questo: [0] -> { :task_d => 10, :store_name=> "Koramanagala", :store_region=> …
So che puoi chiedere ad ActiveRecord di elencare le tabelle nella console usando: ActiveRecord::Base.connection.tables Esiste un comando che elencherebbe le colonne in una determinata tabella?
Ho un modello A che ha un'associazione "has_many" a un altro modello B. Ho un requisito aziendale che un inserimento in A richiede almeno 1 record associato a B. C'è un metodo che posso chiamare per assicurarmi che sia vero, o devo scrivere una convalida personalizzata?
C'è un modo per sovrascrivere il valore dell'ID di un modello durante la creazione? Qualcosa di simile a: Post.create(:id => 10, :title => 'Test') sarebbe l'ideale, ma ovviamente non funzionerà.
Usando Rails 3.2, cosa c'è di sbagliato in questo codice? @reviews = @user.reviews.includes(:user, :reviewable) .where('reviewable_type = ? AND reviewable.shop_type = ?', 'Shop', 'cafe') Solleva questo errore: Impossibile caricare con entusiasmo l'associazione polimorfica: revisionabile Se rimuovo la reviewable.shop_type = ?condizione, funziona. Come posso filtrare in base a reviewable_typee reviewable.shop_type(che è effettivamente …
Ho una serie di oggetti, chiamiamola Indicator. Voglio eseguire i metodi della classe Indicator (quelli della def self.subjectsvarietà, degli ambiti, ecc.) Su questo array. L'unico modo che conosco per eseguire metodi di classe su un gruppo di oggetti è di averli come ActiveRecord :: Relation. Quindi finisco per ricorrere all'aggiunta …
Allo stato attuale, questa domanda non è adatta al nostro formato di domande e risposte. Ci aspettiamo che le risposte siano supportate da fatti, riferimenti o competenze, ma questa domanda probabilmente solleciterà dibattiti, argomenti, sondaggi o discussioni estese. Se ritieni che questa domanda possa essere migliorata e possibilmente riaperta, visita …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.