Articles of activerecord

Cómo probar la igualdad de objetos (ActiveRecord)

En Ruby 1.9.2 on Rails 3.0.3 , estoy intentando probar la igualdad de objetos entre dos objetos Friend (clase hereda de ActiveRecord::Base ). Los objetos son iguales, pero la prueba falla: Failure/Error: Friend.new(name: ‘Bob’).should eql(Friend.new(name: ‘Bob’)) expected # got # (compared using eql?) Solo por sonrisas, también pruebo la identidad del objeto, que falla como […]

Safe ActiveRecord como consulta

Estoy tratando de escribir una consulta LIKE. Leí que las cadenas de caracteres puros no son seguras, sin embargo, no pude encontrar ninguna documentación que explicara cómo escribir seguro como HKE Query. ¿Es posible? ¿Debo defenderme manualmente contra la inyección de SQL?

Relación polimórfica HABTM

Soy bastante nuevo en Rails, y estoy tratando de hacer una relación HABTM polimórfica. El problema es que tengo tres modelos que quiero relacionar. El primero es el modelo de evento y luego hay dos tipos de asistentes: usuarios y contactos. Lo que quiero hacer es poder relacionar como asistente a los usuarios y contactos. […]

Cómo implementar la inserción masiva en Rails 3

Necesito insertar una matriz de correos electrónicos como registros diferentes en mi tabla de contactos. ¿Cómo puede hacerse esto? Eg: @email = [“a@b.com”, “c@d.com”, “e@f.com”, … ] No quiero usar @email.each do |email| @contact = Contact.new @contact.email = email @contact.save end Esta causa n inserta requiere. Solo necesito una única consulta de inserción para insertar […]

¿Cómo implementar la herencia de Active Record en Ruby on Rails?

¿Cómo implementar herencia con registros activos? Por ejemplo, quiero una clase Animal, clase Dog y clase Cat. ¿Cómo serían el modelo y el mapeo de la tabla de la base de datos?

¿Cómo usar la identificación larga en las aplicaciones de Rails?

¿Cómo puedo cambiar el tipo (predeterminado) para los ID de ActiveRecord? int no es lo suficientemente largo, preferiría mucho tiempo. Me sorprendió que no haya: mucho tiempo para las migraciones: ¿uno solo usa algo de decimal?

ActiveRecord serialize utilizando JSON en lugar de YAML

Tengo un modelo que usa una columna serializada: class Form < ActiveRecord::Base serialize :options, Hash end ¿Hay alguna manera de hacer que esta serialización use JSON en lugar de YAML?

Rieles: orden con nulos por última vez

En la aplicación Rails me he encontrado con un problema un par de veces que me gustaría saber cómo resuelven otras personas: Tengo ciertos registros donde un valor es opcional, por lo que algunos registros tienen un valor y algunos son nulos para esa columna. Si ordeno por esa columna en algunas bases de datos, […]

Rails 3 migraciones: ¿Agregar columna de referencia?

Si creo una nueva migración de Rails 3 con (por ejemplo) rails g migration tester title:tester user:references , todo funciona bien … sin embargo, si agrego una columna con algo como: rails g migration add_user_to_tester user:references el campo de referencia no es reconocido. En resumen, la pregunta es: ¿cómo agrego una columna de referencia a […]

belongs_to a través de asociaciones

Dadas las siguientes asociaciones, necesito hacer referencia a la Question que se adjunta una Choice desde el modelo de Choice . He estado intentando usar belongs_to :question, through: :answer para realizar esta acción. class User has_many :questions has_many :choices end class Question belongs_to :user has_many :answers has_one :choice, :through => :answer end class Answer belongs_to […]