Вопросы с тегом «rails-activerecord»

Реализация объектно-реляционного отображения (ORM) с использованием шаблона Active Record в среде Ruby on Rails.


12
найти vs find_by vs где
Я новичок в рельсах. Я вижу, что есть много способов найти запись: find_by_<columnname>(<columnvalue>) find(:first, :conditions => { <columnname> => <columnvalue> } where(<columnname> => <columnvalue>).first И похоже, что все они в конечном итоге генерируют один и тот же SQL. Кроме того, я считаю, что то же самое верно и для поиска …




7
Как я могу перезаписать метод получения в модели ActiveRecord?
Я пытаюсь перезаписать метод получения для модели ActiveRecord. У меня есть атрибут, вызываемый nameв модели Category, и я хотел бы сделать что-то вроде этого: def name name_trans || name end Если name_transатрибут не равен нулю, вернуть его, иначе вернуть nameатрибут. Как бы я это сделал? Затем это следует обычно вызывать …

2
Предупреждение об устаревании при использовании has_many: through: uniq в Rails 4
В Rails 4 появилось предупреждение об устаревании при использовании: uniq => true с has_many: through. Например: has_many :donors, :through => :donations, :uniq => true Выдает следующее предупреждение: DEPRECATION WARNING: The following options in your Goal.has_many :donors declaration are deprecated: :uniq. Please use a scope block instead. For example, the following: …

2
Изменение типа столбца на более длинные строки в рельсах
При первой миграции я объявил, что столбец contentявляется строкой, Activerecord сделал его строкой (255) в соответствии с гемом-аннотацией. После того, как я нажимаю приложение на heroku, которое использует postgres, если я ввожу в форму в content строку длиннее 255, я получаю сообщение об ошибке PGError: ERROR: value too long for …

3
ActiveRecord находит и возвращает только выбранные столбцы
редактировать 2 Если вы наткнетесь на это, проверьте оба ответа, так как я бы сейчас использовал для этого pluck У меня есть довольно большой пользовательский набор данных, который я хотел бы вернуть, чтобы он отображался как json. Одна часть: l=Location.find(row.id) tmp[row.id]=l но я бы хотел сделать что-то вроде: l=Location.find(row.id).select("name, website, …

9
Откат неудачной миграции Rails
Как отменить неудачную миграцию рельсов? Я ожидал, что rake db:rollbackэто отменит неудачную миграцию, но нет, это откатит предыдущую миграцию (неудачная миграция минус один). И rake db:migrate:down VERSION=myfailedmigrationтоже не работает. Я сталкивался с этим несколько раз, и это очень расстраивает. Вот простой тест, который я провел, чтобы воспроизвести проблему: class SimpleTest …

12
ЛЕВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ в Rails 4
У меня 3 модели: class Student < ActiveRecord::Base has_many :student_enrollments, dependent: :destroy has_many :courses, through: :student_enrollments end class Course < ActiveRecord::Base has_many :student_enrollments, dependent: :destroy has_many :students, through: :student_enrollments end class StudentEnrollment < ActiveRecord::Base belongs_to :student belongs_to :course end Я хочу запросить список курсов в таблице Courses, которых нет в …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.