NoMethodError: неопределенный метод `create_at 'для nil: NilClass - PullRequest
0 голосов
/ 04 января 2019

Итак, я играю с прицелами в модели рельсов.

Эти запросы отлично работают в среде разработки, но не на производстве.

Вот моя Fee модель, из которой я запускаю active-record запрос для получения конкретных счетов из StudentFeeInvoice Model.

приложение / модели / fee.rb

most_recent_invoice = aStudent.student_fee_invoices.invoices_except_pending_and_adjusted.order(:created_at).last
new_filter_for_invoices = aStudent.student_fee_invoices.invoices_after_specific_date(most_recent_invoice.created_at)"

приложение / модель / student_fee_invoice.rb

scope :invoices_except_pending_and_adjusted, -> {where("status != ? AND status != ?", "Pending", "Adjusted")}
scope :invoices_after_specific_date, -> (created_date) {where('created_at > ?', created_date)}

Пожалуйста, поправьте меня, что я делаю неправильно. Заранее спасибо!

1 Ответ

0 голосов
/ 04 января 2019

Скорее всего, aStudent.student_fee_invoices.invoices_except_pending_and_adjusted.order(:created_at).last возвращается nil

В этом случае вам понадобится что-то вроде:

new_filter_for_invoices = aStudent.student_fee_invoices.invoices_after_specific_date(most_recent_invoice ? most_recent_invoce.created_at : DateTime.now)
...