Articles of activerecord

Utilizzo degli helper nel modello: come includere le dipendenze helper?

Sto scrivendo un modello che gestisce l’input dell’utente da un’area di testo. Seguendo il consiglio di http://blog.caboo.se/articles/2008/8/25/sanitize-your-users-html-input , sto pulendo l’input nel modello prima di salvare nel database, usando il before_validate richiama. Le parti rilevanti del mio modello assomigliano a questo: include ActionView::Helpers::SanitizeHelper class Post %w(biu)) end end Inutile dire che questo non funziona. Ottengo […]

Ordine di rails per numero di risultati di has_many association

Esiste comunque la possibilità di ordinare i risultati ( ASC / DESC ) per numero di articoli restituiti dal modello figlio ( Jobs )? @featured_companies = Company.joins(:jobs).group(Job.arel_table[:company_id]).order(Job.arel_table[:company_id].count).limit(10) Ad esempio: ho bisogno di stampare le aziende con i più alti posti di lavoro in cima

LEFT OUTER si unisce a Rails 3

Ho il codice seguente: @posts = Post.joins(:user).joins(:blog).select che ha lo scopo di trovare tutti i post e restituirli e gli utenti e i blog associati. Tuttavia, gli utenti sono facoltativi, il che significa che INNER JOIN che :joins genera non restituisce molti record. Come posso usarlo per generare un LEFT OUTER JOIN invece?

ActiveRecord Trova per anno, giorno o mese in un campo Data

Ho un modello ActiveRecord che ha un attributo data. È ansible utilizzare quell’attributo data per trovare per anno, giorno e mese: Model.find_by_year(2012) Model.find_by_month(12) Model.find_by_day(1) o è semplicemente ansible find_by_date (2012-12-1). Speravo di poter evitare di creare attributi di Anno, Mese e Giorno.

Rails 3 SQLite3 Boolean false

Sto cercando di inserire un valore booleano falso in una tabella SQLite3 ma inserisce sempre un valore vero. Ecco la mia migrazione: class CreateUsers false, :null => false end end def self.down drop_table :resources end end Quando provo a inserire usando le rotaie, produce il seguente SQL: INSERT INTO “users” (“name”, “active”) VALUES (‘test’, ‘f’) […]

Rails 3 escogita, current_user non è accessibile in un modello?

nel mio modello project.rb, sto provando a creare un ambito con una variabile dynamic: scope :instanceprojects, lambda { where(“projects.instance_id = ?”, current_user.instance_id) } Ottengo il seguente errore: undefined local variable or method `current_user’ for # Dove nel controller posso accedere a current_user.instance_id … C’è un motivo per cui il modello non può accedervi e un […]

Modifica della chiave primaria in Rails per essere una stringa

Quindi ho due modelli, Stato e Acquisizione. Stato ha_molte Acquisizioni. Mi sentivo come una chiave primaria intera autoincrementante per 51 record era piuttosto sciocco. Quindi ho modificato il modello per lo stato come PK (lo stato è l’abbreviazione di due lettere, non sto memorizzando il nome dello stato attuale da nessuna parte: class State < […]

Come gestire l’errore di Ruby on Rails: “Installare l’adattatore postgresql:` gem install activerecord-postgresql-adapter ‘”

Eseguendo un’applicazione Ruby on Rails (RoR) o Ruby che utilizza il framework ActiveRecord, si ottiene il messaggio di errore: Installare l’adattatore postgresql: gem install activerecord-postgresql-adapter Cercando di eseguire: gem install activerecord-postgresql-adapter fallisce anche, lasciandoti in perdita.

Alias ​​per i nomi delle colonne in Rails

Nel mio database ha nomi di colonne come “cancella” o “ascolta controllo” e così via. Questi non possono essere modificati, quindi mi piacerebbe fare l’alias dei nomi in modo da evitare problemi nella mia applicazione. Ho trovato il seguente codice ma è obsoleto (5 agosto 2005) e non funziona con Rails 3: module Legacy def […]

Come sostituire i caratteri latini accentati in Ruby?

Ho un modello ActiveRecord , Foo , che ha un campo name . Mi piacerebbe che gli utenti fossero in grado di cercare per nome, ma mi piacerebbe che la ricerca ignorasse il caso e qualsiasi accento. Pertanto, sto anche memorizzando un campo canonical_name su cui cercare: class Foo validates_presence_of :name before_validate :set_canonical_name private def […]