Tag: activerecord

Rails ActiveRecord: объединяется с LEFT JOIN вместо INNER JOIN

У меня есть этот код User.find(:all, :limit => 10, :joins => :user_points, :select => “users.*, count(user_points.id)”, :group => “user_points.user_id”) который генерирует следующий sql SELECT users.*, count(user_points.id) FROM `users` INNER JOIN `user_points` ON user_points.user_id = users.id GROUP BY user_points.user_id LIMIT 10 возможно ли сделать LEFT JOIN вместо INNER JOIN другим способом, чем User.find_by_sql и вручную ввести […]

Предупреждение о устаревании при использовании has_many: через: uniq in 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: has_many :spam_comments, conditions: { spam: true […]

Как показать SQL-запросы в консоли Rails?

Когда я запускаю запросы (например, MyModel.where(…) или record.associated_things ) в консоли, как я могу увидеть фактические запросы к базе данных, чтобы я мог лучше понять, что происходит?

Массовая вставка записей в таблицу Active Record

Я обнаружил, что мой Model.create! заявления занимали очень много времени, когда я добавлял большое количество записей одновременно. Посмотрел на ActiveRecord-Import, но он не работал с массивом хешей (это то, что у меня есть и которое, как мне кажется, довольно распространено). Как я могу улучшить производительность?

Полиморфные отношения HABTM

Я довольно новичок в Rails, и я пытаюсь сделать полиморфное отношение HABTM. Проблема в том, что у меня есть три модели, которые я хочу рассказать. Первая – это модель Event, а затем два вида участников: пользователи и контакты. То, что я хочу сделать, – это связать себя как посетителя, так и пользователей и контактов. Итак, […]

Как реализовать объемную вставку в Rails 3

Мне нужно вставить массив писем в разные записи в таблицу контактов. Как это может быть сделано. Eg: @email = [“[email protected]”, “[email protected]”, “[email protected]”, … ] Я не хочу использовать. @email.each do |email| @contact = Contact.new @contact.email = email @contact.save end Это приводит к появлению n запросов. Мне просто нужен один запрос на вставку, чтобы вставить эти […]

Как использовать длинный идентификатор в Rails-приложениях?

Как изменить тип (по умолчанию) для идентификаторов ActiveRecord? int не достаточно длинный, я бы предпочел бы долго. Я был удивлен, что нет: долго для миграции – используется ли какой-нибудь десятичный знак?

Rails: порядок с нулями

В моем приложении Rails я столкнулся с проблемой пару раз, и мне хотелось бы знать, как другие люди решат: У меня есть определенные записи, где значение является необязательным, поэтому некоторые записи имеют значение, а некоторые – для этого столбца. Если я заказываю по этому столбцу в некоторых базах данных сначала сортировку нhive, а в некоторых […]

Серийный цикл ActiveRecord с использованием JSON вместо YAML

У меня есть модель, которая использует сериализованный столбец: class Form < ActiveRecord::Base serialize :options, Hash end Есть ли способ заставить эту сериализацию использовать JSON вместо YAML?

Как я могу использовать ON DUPLICATE KEY UPDATE в моей модели CodeIgniter?

У меня есть CodeIgniter / PHP Model, и я хочу вставить некоторые данные в базу данных. Тем не менее, у меня это установлено в моем «сыром» SQL-запросе: ON DUPLICATE KEY UPDATE duplicate=duplicate+1 Я использую CodeIgniter и конвертирую все мои предыдущие SQL-запросы в controller в ActiveRecord . Есть ли способ сделать это из модели ActiveRecord? Благодаря! […]

Давайте будем гением компьютера.