ActiveRecord- все статьи тега


Используйте active record для поиска записей по месяцам и дням, игнорируя год и время

У меня есть модель (записи) с записями за пять лет (одна запись в день). Мне нужен метод, который при передаче объекта даты, такого как 2011-12-25 00:00:00, покажет мне все записи, которые произошли на 12/25 (запрос к столбцу :created_at), независимо от года или времени, которое прошло. RoR 3.0.9 / Ruby 1.9. 2p290 ...

MySQL, Rails ActiveRecord группировка дат и часовых поясов

Я хочу считать пользователей по дате создания. Когда я запрашиваю своего последнего пользователя, у меня есть: > User.last.created_at => Thu, 07 Aug 2014 21:37:55 BRT -03:00 Когда я считаю пользователей на дату, я получаю следующее: > User.group("date(created_at)").count => {Fri, 08 Aug 2014=>1} Дата создания - 7 августа, а результат-8 августа. Это происходит потому, что состояние группы находится в UTC, а мой часовой пояс - "Бразилиа". У меня есть это в моем applicatio ...

Rails 3 + activerecord, лучший способ "массового обновления" одного поля для всех записей, удовлетворяющих условию

В rails 3, используя activerecord, есть ли способ одним запросом установить поле : hidden в TRUE для всех записей, удовлетворяющих условию ... скажем, например, :condition => [ "phonenum = ?", some_phone_number ] Если один запрос не может этого сделать, каков оптимальный подход? ...

Ruby on Rails получить все комментарии

У меня есть (полиморфный) объект Comment (который будет использоваться для объектов Vehicle и Review). Как я могу получить все comments для User s Vehicles: @user.vehicles.comments? Он говорит, что метод comments Не определен для ActiveRecord::Relation. Есть какой-нибудь простой способ заставить его работать? Это отношение многих ко многим: многие транспортные средства имеют много комментариев? Или я ошибаюсь? @user.vehicles.first.comments работает правильно. Отношения между объектами (не пол ...

rake db: migrate не обнаруживает новую миграцию?

Опыт работы с Rails / ActiveRecord 2.1.1 вы создаете первую версию с помощью (например) ruby scriptgenerate scaffold название продукта: string описание: text image_url: string при этом создается (например) файл миграции с именем 20080910122415_create_products.rb Вы применяете миграцию с помощью rake db: migrate Теперь вы добавляете поле в таблицу product с помощью ruby scriptgenerate migration add_price_to_product price: decimal это создает файл миграции называется 20080910125745_add_pri ...

Yii2: Как установить значения атрибутов по умолчанию в ActiveRecord?

Это может показаться тривиальным вопросом, однако все очевидные решения, которые я могу придумать, имеют свои собственные недостатки. Мы хотим иметь возможность задать любое значение атрибута ActiveRecord по умолчанию только для новых записей таким образом, чтобы он был доступен для чтения до и во время проверки и не мешал производным классам, используемым для поиска. Значения по умолчанию должны быть установлены и готовы, как только мы создадим экземпляр класса, так что (new MyModel)->attr ...

Ассоциации ActiveRecord

У меня есть база данных, состоящая из сцен и персонажей Символ принадлежит нулю или многим сценам, а сцена может иметь ноль или много символов. Модель сцены class Scene < ActiveRecord::Base belongs_to :chapter has_many :characters end База данных сцен class CreateScenes < ActiveRecord::Migration def change create_table :scenes do |t| t.text :narrative t.string :place t.string :period t.integer :chapter_id t.timestamps end end en ...

Поиск без учета регистра в модели Rails

моя модель продукта содержит некоторые элементы Product.first => #<Product id: 10, name: "Blue jeans" > теперь я импортирую некоторые параметры продукта из другого набора данных, но есть несоответствия в написании имен. Например, в другом наборе данных, Blue jeans может быть прописано Blue Jeans. хотел Product.find_or_create_by_name("Blue Jeans"), но это создаст новый продукт, почти идентичный первому. Каковы мои варианты, если я хочу найти и сравнить имя в нижнем регистре. про ...

удалить все против уничтожить все?

Я ищу лучший подход для удаления записей из таблицы. Например, у меня есть пользователь, чей идентификатор пользователя находится во многих таблицах. Я хочу удалить этого пользователя, и каждая запись имеет свой ID во всех таблицах. u = User.find_by_name('JohnBoy') u.usage_indexes.destroy_all u.sources.destroy_all u.user_stats.destroy_all u.delete это работает и удаляет все ссылки пользователя из всех таблиц, но я слышал, что destroy_all был очень тяжелый процесс, поэтому я попробовал delete_ ...

Количество, размер, длина...слишком много вариантов в Ruby?

Я не могу найти окончательного ответа на этот вопрос, и я хочу убедиться, что я понимаю это до "n-го уровня": -) a = { "a" => "Hello", "b" => "World" } a.count # 2 a.size # 2 a.length # 2 a = [ 10, 20 ] a.count # 2 a.size # 2 a.length # 2 Так что же использовать? Если я хочу знать, имеет ли a более одного элемента, то это не имеет значения, но я хочу убедиться, что понимаю реальную разницу. Это относится и к массивам. Я получаю те же результа ...

Вы можете получить имя пользователя БД, pw, имя базы данных в Rails?

Я пишу задачу рейка, которая делает некоторую работу БД вне Rails/ActiveRecord. есть ли способ получить информацию о подключении к БД (хост, имя пользователя, пароль, имя БД) для текущей среды, как определено в database.yml? Я хотел бы получить его, чтобы я мог использовать его для подключения, как это... con = Mysql.real_connect("host", "user", "pw", "current_db") ...

Использование Rails serialize для сохранения хэша в базе данных

Я пытаюсь сохранить хэш-сопоставление идентификаторов для нескольких попыток в моем приложении rails. Моя миграция в базу данных для размещения этого нового столбца: class AddMultiWrongToUser < ActiveRecord::Migration def self.up add_column :users, :multi_wrong, :string end def self.down remove_column :users, :multi_wrong end end В моей модели у меня есть: class User < ActiveRecord::Base serialize :multi_wrong, Hash end но когда я использую консоль rails, чтобы про ...

Почему все активные записи ненавидят? [закрытый]

по мере того, как я узнаю все больше и больше о ООП и начинаю реализовывать различные шаблоны проектирования, я продолжаю возвращаться к случаям, когда люди ненавидят Активная Запись. часто люди говорят, что он не масштабируется хорошо (цитируя Twitter в качестве своего главного примера) - но никто на самом деле не объясняет почему он не масштабируется хорошо; и / или как достичь плюсов AR без минусов (через аналогичный, но другой шаблон?) надеюсь это не превратится в священную войну о шаблона ...

Как реализовать имеет много: через отношения с Mongoid и mongodb?

используя этот измененный пример из рельсы направляющие, как можно моделировать реляционную ассоциацию" has_many :through " с использованием mongoid? проблема в том, что mongoid не поддерживает has_many :через Как ActiveRecord делает. # doctor checking out patient class Physician < ActiveRecord::Base has_many :appointments has_many :patients, :through => :appointments has_many :meeting_notes, :through => :appointments end # notes taken during the appointment class MeetingNote & ...

Преобразование массива объектов в ActiveRecord:: Relation

у меня есть массив объектов, назовем это Indicator. Я хочу запустить методы класса индикатора (те из def self.subjects разнообразие, области и т. д.) На этом массиве. Единственный способ, которым я знаю, чтобы запустить методы класса на группе объектов, чтобы они были ActiveRecord:: Relation. Поэтому я в конечном итоге прибегаю к добавлению to_indicators метод Array. def to_indicators # TODO: Make this less terrible. Indicator.where id: self.pluck(:id) end иногда я цепочку довольно много ...

Как Rails отслеживает, какие миграции выполнялись для базы данных?

согласно Rails doc:http://guides.rubyonrails.org/migrations.html "активные записи треков, которые миграции уже были запущены, так что все, что вам нужно сделать, это обновить источник и запустить rake db:migrate." Как ActiveRecord на самом деле это делает? Где Active Record хранит данные? Я подозреваю, что это может храниться в самой базе данных? Где-то в столе. на моей машине развития, я побежал все миграции. Затем я скопировал производственную базу данных с помощью mysqldump. Затем я з ...

Как вручную выполнить команды SQL в Ruby On Rails с помощью NuoDB

Я пытаюсь вручную выполнить команды SQL, чтобы я мог получить доступ к процедурам в NuoDB. Я использую Ruby on Rails и я использую следующую команду: ActiveRecord::Base.connection.execute("SQL query") "SQL-запрос" может быть любой командой SQL. например у меня есть таблица под названием "Обратная связь" и когда я выполните команду: ActiveRecord::Base.connection.execute("SELECT `feedbacks`.* FROM `feedbacks`") Это только вернет "истинный" ответ вместо отправки мне всех запрошенных данных ...

Запрос MySQL с помощью CodeIgniter, выбор строк, где поле равно NULL

Я использую класс активной записи CodeIgniter для запроса базы данных MySQL. Мне нужно выбрать строки в таблице, где поле не имеет значения NULL: $this->db->where('archived !=', 'NULL'); $q = $this->db->get('projects'); что возвращает только этот запрос: SELECT * FROM projects WHERE archived != 'NULL'; The ...

Рельсы: заказ с нулями последний

В моем приложении Rails я столкнулся с проблемой пару раз, что я хотел бы знать, как другие люди решают: у меня есть определенные записи, где значение является необязательным, поэтому некоторые записи имеют значение, а некоторые-null для этого столбца. Если я заказываю по этому столбцу на некоторых базах данных нули сортируются первыми, а на некоторых базах данных нули сортируются последними. например, у меня есть фотографии, которые могут или не могут принадлежать к коллекции, т. е. есть нес ...