Я пытаюсь создать метод, который получает дату и добавляет к ней указанное количество дней.
В настоящее время я не могу назвать указанные дни.
У меня есть класс Plant, у которого есть _many DaysTillSellables, а у класса Period есть также_DysTillSellable.
Когда пользователь создает завод, он может добавить DaysTillSellables, а затем выбрать период и затем ввести количество дней.
Сначала мне нужно проверить, в каком периоде находится дата, а затем вернуть этот период. В настоящее время пытается, как так
def current_period
return unless completed_at_week.between?(period.start_week, period.finish_week)
index_days_till_sellables_on_period_id
end
Затем найдите дни до продажи, которые связаны с этим периодом, и, наконец, назовите дни с этого
Ниже приведен код класса, который я пытаюсь вызвать в
class Potting < ApplicationRecord
belongs_to :batch, inverse_of: :pottings
validates :plant_count, :completed_at, presence: true
enum germination_result: { light: 0, medium: 1, full: 2 }
def pottings_completed_at
"Week #{completed_at.strftime('%U').to_i}/#{completed_at.strftime('%Y').to_i}"
end
def completed_at
super || Time.zone.today
end
def completed_at_week
completed_at.strftime('%U')
end
def current_period
return unless completed_at_week.between?(period.start_week, period.finish_week)
index_days_till_sellables_on_period_id
end
def period_days
plant.days_till_sellables.find_by(period: :current_period).¤t_period.days
end
def ready_for_sale
completed_at + period_days
end
end
Я добавил больше кода ниже, чтобы улучшить контекст для классов
class DaysTillSellable < ApplicationRecord
belongs_to :period, inverse_of: :days_till_sellables, foreign_key: :period_id
belongs_to :plant, inverse_of: :days_till_sellables, foreign_key: :plant_id
validates :days, presence: true
end
.
class Period < ApplicationRecord
has_many :days_till_sellables, dependent: :destroy, inverse_of: :period
belongs_to :organization
.
class Plant < ApplicationRecord
has_many :batches, dependent: :destroy
has_many :goals, dependent: :destroy
has_many :days_till_sellables, dependent: :destroy, inverse_of: :plant
belongs_to :organization
accepts_nested_attributes_for :days_till_sellables, allow_destroy: true
validates :genus, :species, :period_id, presence: true
end