Я абсолютно и абсолютно новичок в рельсах, поэтому ответ, вероятно, очень прост. Здесь идет:Ошибка Rails «NoMethodError» - мое первое приложение ruby
Моя страница генерирует эту ошибку
NoMethodError in Tasks#new Showing app/views/tasks/new.erb where line #3 raised: undefined method `tasks_path' for #
Вот мнение:
<% form_for(@task) do |f| %>
<%= f.error_messages %>
<%= f.label :description %>:
<%= f.text_field :description %><br />
<%= f.label :priority %>:
<%= collection_select(:news, :priority_id, Priority.find(:all), :id, :description) %><br />
<%= f.submit "Add Task" %>
<% end %>
Контроллер:
class TasksController < ApplicationController
def index
@all_tasks = Task.find(:all, :order => :id)
end
def new
@task = Task.new
end ...(more)
и модель:
Я не вижу проблемы, бу Как я уже сказал, я до сих пор не знаю. Спасибо!
class Task < ActiveRecord::Base
validates_presence_of :description
belongs_to :priority
has_and_belongs_to_many :staff
has_and_belongs_to_many :catagory
end
О, вы правы на. Добавив это, я смог использовать form_for с @task – doctororange
Если у вас есть @task = Task.new в вашем действии, form_for (@task) ссылается на пустой объект задачи.: задача превратит вашу форму в задачи/новую вместо задачи RESTful/with method = 'post'. – Jarrod