У меня есть вложенный ресурс, называемый транзакциями внутри другого «бюджета».Rails 4 LocalJumpError для вложенной формы регресса
Все, что я пытаюсь выполнить, это для моих пользователей возможность редактировать отдельные «транзакции». Однако, когда я перехожу в/1/transaction/1/edit, я получаю сообщение LocalJumpError, говорящее «no block given (yield)». Возможно, это очень простое решение, но я еще не смог его найти.
routes.rb:
resources :budgets, :path => '/' do
resources :transactions
end
budget.rb:
class Budget < ActiveRecord::Base
belongs_to :user
has_many :transactions
validates :amount, presence: true
validates :title, presence: true
validates :user, presence: true
validates :amount, numericality: true
extend FriendlyId
friendly_id :title, use: :slugged
def should_generate_new_friendly_id?
new_record?
end
end
transaction.rb
class Transaction < ActiveRecord::Base
belongs_to :user
belongs_to :budget
validates :amount, presence: true
validates :user, presence: true
validates :budget, presence: true
validates :date, presence: true
validates :amount, numericality: true
validates :is_positive, :inclusion => {:in => [true, false]}
end
transactions_controller.rb
def edit
@budget = Budget.friendly.find(params[:budget_id])
@transaction = @budget.transaction
end
И в обзорных сделок/edit.html.erb:
<%= form_for(@transaction) do |f| %>
Что мне не хватает?
Я никогда бы не догадался, что. большое спасибо – sam