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

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

3
Проверить уникальность нескольких столбцов
Есть ли способ рельсового способа проверки того, что фактическая запись уникальна, а не только столбец? Например, модель / таблица дружбы не должна иметь несколько одинаковых записей, таких как: user_id: 10 | friend_id: 20 user_id: 10 | friend_id: 20

3
Понимание: исходная опция has_one / has_many через Rails
Пожалуйста, помогите мне понять :sourceвариант has_one/has_many :throughобъединения. Объяснение Rails API для меня мало что значит. «Определяет имя источника ассоциации используется has_many :through => :queries. Только использовать его , если имя не может быть выведено из ассоциации. has_many :subscribers, :through => :subscriptionsБудет искать либо :subscribersили :subscriberна Subscription, если только :sourceне дано.»


8
Объединить два объекта ActiveRecord :: Relation
Предположим, у меня есть следующие два объекта: first_name_relation = User.where(:first_name => 'Tobias') # ActiveRecord::Relation last_name_relation = User.where(:last_name => 'Fünke') # ActiveRecord::Relation Можно ли объединить два отношения, чтобы получить один ActiveRecord::Relationобъект, содержащий оба условия? Примечание. Мне известно, что я могу объединить усилия, чтобы получить такое поведение, что меня действительно интересует, так …

5
Проверьте, существует ли таблица в Rails
У меня есть грабли, которые не будут работать, если таблица не существует. Я работаю с более чем 20 инженерами на веб-сайте, поэтому я хочу убедиться, что они перенесли таблицу, прежде чем они смогут выполнить задачу rake, которая заполнит эту соответствующую таблицу. Есть ли у AR такой метод, как Table.exists? Как …


11
Rails ActiveRecord дата между
Мне нужно запросить комментарии, сделанные за один день. Поле является частью стандартных временных меток, является created_at. Выбранная дата исходит от date_select. Как я могу использовать ActiveRecordэто сделать? Мне нужно что-то вроде: "SELECT * FROM comments WHERE created_at BETWEEN '2010-02-03 00:00:00' AND '2010-02-03 23:59:59'"

3
Rails - вложенные включения в Active Records?
У меня есть список событий, которые я получаю. Я пытаюсь включить каждого пользователя, связанного с этим событием, и каждый профиль, связанный с каждым пользователем. Пользователи включены, но не их профили. Как бы я это сделал Event.includes(:users [{profile:}]) Документы, кажется, не ясны: http://guides.rubyonrails.org/active_record_querying.html


4
Rails 3 типа данных?
Где я могу найти список типов данных, которые можно использовать в рельсах 3? (например, текст, строка, целое число, число с плавающей точкой, дата и т. д.?) Я постоянно узнаю о новых, но я бы хотел иметь список, к которому можно было бы легко сослаться.

25
Случайная запись в ActiveRecord
Мне нужно получить случайную запись из таблицы через ActiveRecord. Я последовал примеру Джемиса Бака из 2006 года . Тем не менее, я также натолкнулся на другой способ поиска в Google (не могу приписать ссылку из-за ограничений нового пользователя): rand_id = rand(Model.count) rand_record = Model.first(:conditions => ["id >= ?", rand_id]) Мне …

6
Области с лямбда и аргументы в стиле Rails 4?
Мне интересно, как это делается в Rails 4 или я просто использую подход Rails 3 для использования лямбда-выражения, которое может передавать аргумент таким же образом с 4, как и с 3. Я довольно новичок в Rails 3 и пытаюсь проработать некоторые примеры, использующие Rails 4. Вот мой код Rails 3: …

27
Как я могу избежать выполнения обратных вызовов ActiveRecord?
У меня есть модели с обратными вызовами after_save. Обычно это нормально, но в некоторых ситуациях, например при создании данных для разработки, я хочу сохранить модели без выполнения обратных вызовов. Есть простой способ сделать это? Что-то вроде ... Person#save( :run_callbacks => false ) или Person#save_without_callbacks Я просмотрел документацию Rails и ничего …

10
Как изменить часовой пояс по умолчанию для Active Record в Rails?
В своем application.rbя наткнулся на следующий комментарий # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone. # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC. config.time_zone = 'Eastern Time (US & Canada)' Как вы …

19
Как связать запросы области с помощью ИЛИ вместо И?
Я использую Rails3, ActiveRecord Просто интересно, как я могу связать области видимости с помощью операторов OR вместо AND. например Person.where(:name => "John").where(:lastname => "Smith") Это обычно возвращает: name = 'John' AND lastname = 'Smith' но я бы хотел: `name = 'John' OR lastname = 'Smith'

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.