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

Active Record - это шаблон, который объединяет логику предметной области с абстракцией хранилища в одном объекте. Используйте этот тег для вопросов о шаблоне, [rails-activerecord] для вопросов о Rails ORM framework.

417
Как я могу установить значения по умолчанию в ActiveRecord?

Как я могу установить значение по умолчанию в ActiveRecord? Я вижу сообщение от Пратика, которое описывает уродливый, сложный кусок кода: http://m.onkey.org/2007/7/24/how-to-set-default-values-in-your-model class Item < ActiveRecord::Base def initialize_with_defaults(attrs = nil, &block)...

412
Какой самый простой способ дублировать запись активной записи?

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

408
Как вы пишете миграцию для переименования модели ActiveRecord и ее таблицы в Rails?

Я ужасно разбираюсь в названиях и понимаю, что в моем приложении Rails есть лучший набор имен для моих моделей. Есть ли способ использовать миграцию для переименования модели и соответствующей ей...

392
Как я могу получить название класса Ruby?

Как я могу получить имя класса из объекта ActiveRecord? Я имею: result = User.find(1) Я старался: result.class # => User(id: integer, name: string ...) result.to_s # => #<User:0x3d07cdc>" Мне нужно только имя класса в строке ( Userв этом случае). Есть ли способ для этого? Я знаю, что...

359
Рельсы, где условие с использованием NOT NIL

Используя стиль rails 3, я бы написал противоположность: Foo.includes(:bar).where(:bars=>{:id=>nil}) Я хочу найти, где идентификатор не ноль. Я старался: Foo.includes(:bar).where(:bars=>{:id=>!nil}).to_sql Но это возвращает: => "SELECT \"foos\".* FROM \"foos\" WHERE (\"bars\".\"id\"...

345
Rails: включить против: соединения

Это скорее вопрос «почему все работает так», а не вопрос «я не знаю, как это сделать» ... Таким образом, Евангелие при извлечении связанных записей, которое, как вы знаете, вы собираетесь использовать, заключается в том, чтобы использовать его, :includeпотому что вы получите соединение и избежите...

328
Как удалить объект ActiveRecord?

Как удалить объект ActiveRecord? Я посмотрел на Active Record Querying, и у меня нет ничего при удалении, что я вижу. Удалить id, Удалить текущий объект как: user.remove, Вы можете удалить, основываясь на whereпредложении?...

311
Добавьте ссылочную миграцию столбцов в Rails 4

У пользователя много загрузок. Я хочу добавить столбец в uploadsтаблицу, которая ссылается на user. Как должна выглядеть миграция? Вот что у меня есть. Я не уверен, должен ли я использовать (1) :user_id, :intили (2) :user, :references. Я даже не уверен, работает ли (2). Просто пытаюсь сделать это...

308
Ruby on Rails генерирует поле модели: тип - каковы варианты для поля: тип?

Я пытаюсь создать новую модель и забыть синтаксис ссылки на идентификатор другой модели. Я бы сам посмотрел, но не нашел среди всех моих ссылок на документацию по Ruby on Rails, как найти точный источник. $ rails g model Item name:string description:text(а здесь или reference:productили...

283
Число с плавающей запятой и десятичное в ActiveRecord

Иногда типы данных Activerecord сбивают меня с толку. Часто Один из моих вечных вопросов, для данного случая, Я должен использовать :decimalили :float? Я часто сталкивался с этой ссылкой ActiveRecord:: decimal vs: float? , но ответы не совсем ясны, чтобы я был уверен: Я видел много потоков, в...

246
Как вернуть пустое отношение ActiveRecord?

Если у меня есть область видимости с лямбдой, и она принимает аргумент, в зависимости от значения аргумента, я могу знать, что совпадений не будет, но я все же хочу вернуть отношение, а не пустой массив: scope :for_users, lambda { |users| users.any? ? where("user_id IN (?)",...

238
Рельсы: выберите уникальные значения из столбца

У меня уже есть рабочее решение, но мне бы очень хотелось узнать, почему это не работает: ratings = Model.select(:rating).uniq ratings.each { |r| puts r.rating } Он выбирает, но не печатает уникальные значения, он печатает все значения, включая дубликаты. И это в документации:...

235
Предоставляют ли рельсовые задачи доступ к моделям ActiveRecord?

Я пытаюсь создать пользовательскую задачу, но, похоже, у меня нет доступа к моим моделям. Я думал, что это было что-то неявно включенное в задачу рельсов. У меня есть следующий код в lib / tasks / test.rake: namespace :test do task :new_task do puts Parent.all.inspect end end А вот как выглядит моя...

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

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

207
Как выразить запрос NOT IN с ActiveRecord / Rails?

Просто чтобы обновить это, так как кажется, что многие приходят к этому, если вы используете Rails 4, посмотрите на ответы Trung Lê` и VinniVidiVicci. Topic.where.not(forum_id:@forums.map(&:id)) Topic.where(published:true).where.not(forum_id:@forums.map(&:id)) Я надеюсь, что есть простое...