Я новичок в разработке рельсов и приложений, поэтому прошу прощения.Rails model if statement
У меня есть модель под названием продукт, который имеет следующую схему():
t.string "name"
t.integer "cost"
t.boolean "in_stock"
t.datetime "sold_date"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "quantity"
Я хочу in_stock вернуть истину, если количество больше 1, в противном случае ложь. Я написал следующий код в файле product.rb, но он ничего не делает, когда я ввожу количество продуктов через консоль. Я не уверен, что мне нужно связать столбцы базы данных (in_stock и количество) с оператором if или нет. Или даже если это правильный путь. Я был бы благодарен за любые предложения. Благодаря!
class Product < ActiveRecord::Base
belongs_to :company
def in_stock
if quantity >= 1
in_stock true
else
in_stock false
end
Вы должны использовать * обратные вызовы *. –
@ bsvin33t Почему? Я не знал о –
Если они неправильно используются, они создают хотя бы для обработки ситуаций. Например: отправка сообщений электронной почты в обратные вызовы, ** плохая идея **. Анекдот, который я слышал в одном из собраний, имел что-то подобное, и когда они перенаправляли базы данных и выполняли рейк-задачу, затопили своих пользователей тонны текста и электронных писем. – bsvin33t