Запитання з тегом «activerecord»

Active Record - це шаблон, який поєднує логіку домену з абстракцією пам’яті в одному об’єкті. Використовуйте цей тег для запитань щодо шаблону, [rails-activerecord] для запитань про рамки Rails ORM.

4
Чи можете ви більше порівняти з датою в пошуку в Rails 3?
Я шукаю цей пошук в Rails 3: Note.where(:user_id => current_user.id, :notetype => p[:note_type], :date => p[:date]).order('date ASC, created_at ASC') Але мені потрібно, щоб :date => p[:date]умова була рівнозначною :date > p[:date]. Як я можу це зробити? Дякуємо за прочитане

6
Вказівка ​​імені стовпця при переміщенні "посилань"
Я хочу зробити migrationв Rails, посилаючись на іншу таблицю. Зазвичай я б робив щось на кшталт: add_column :post, :user, :references Це створює стовпчик, названий user_idу postsтабл. Але що робити, якщо замість цього user_idя хочу щось подібне author_id? Як я можу це зробити?


3
ActiveRecord, has_many: through та Polymorphic Association
Люди, Хочете переконатися, що я правильно це розумію. І, будь ласка, ігноруйте випадок спадкування тут (SentientBeing), намагаючись замість цього зосередити увагу на поліморфних моделях у has_many: через відносини. Однак, врахуйте наступне ... class Widget < ActiveRecord::Base has_many :widget_groupings has_many :people, :through => :widget_groupings, :source => :person, :conditions => "widget_groupings.grouper_type = …

11
Як я бачу SQL, який буде генерований заданим запитом ActiveRecord в Ruby on Rails
Я хотів би побачити вислів SQL, що дасть запит ActiveRecord. Я усвідомлюю, що можу отримати цю інформацію з журналу після видачі запиту, але мені цікаво, чи існує метод, за допомогою якого можна викликати і ActiveRecord Query. Наприклад: SampleModel.find(:all, :select => "DISTINCT(*)", :conditions => ["`date` > #{self.date}"], :limit => 1, :order …

3
Як зробити запит LIKE в Arel і Rails?
Я хочу зробити щось на кшталт: SELECT * FROM USER WHERE NAME LIKE '%Smith%'; Моя спроба в Арелі: # params[:query] = 'Smith' User.where("name like '%?%'", params[:query]).to_sql Однак це стає: SELECT * FROM USER WHERE NAME LIKE '%'Smith'%'; Arel обертає рядок запиту 'Smith' правильно, але оскільки це твердження LIKE, воно не …


3
Як конвертувати результати ActiveRecord в масив хешей
У мене є результат ActiveRecord операції пошуку: tasks_records = TaskStoreStatus.find( :all, :select => "task_id, store_name, store_region", :conditions => ["task_status = ? and store_id = ?", "f", store_id] ) Тепер я хочу перетворити ці результати в масив хешів на зразок цього: [0] -> { :task_d => 10, :store_name=> "Koramanagala", :store_region=> "India" …



4
Рейки - підтвердити наявність асоціації?
У мене є модель A, яка має асоціацію "has_many" з іншою моделлю B. У мене є вимога бізнесу, щоб вставка в A вимагала принаймні 1 асоційованого запису до B. Чи є метод, який я можу зателефонувати, щоб переконатися, що це правда, чи мені потрібно написати спеціальну перевірку?


4
Швидке навантаження поліморфне
Використовуючи Rails 3.2, що не так з цим кодом? @reviews = @user.reviews.includes(:user, :reviewable) .where('reviewable_type = ? AND reviewable.shop_type = ?', 'Shop', 'cafe') Він викликає цю помилку: Не можу з нетерпінням завантажувати поліморфну ​​асоціацію: рецензується Якщо я видалю reviewable.shop_type = ?умову, вона працює. Як я можу фільтрувати на основі reviewable_typeта reviewable.shop_type(що …

5
Перетворення масиву об'єктів в ActiveRecord :: Відношення
У мене є масив об'єктів, назвемо його an Indicator. Я хочу запустити def self.subjectsна цьому масиві методи класу Indicator (методи сорту, області застосування тощо). Єдиний спосіб, яким я знаю запускати методи класу на групі об'єктів, це мати їх ActiveRecord :: Relation. Тож я закінчую вдаватися до додавання to_indicatorsметоду до Array. …

14
Чому всі Active Record ненавидять? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.