Я следую руководству по рельсам и нуждаюсь в некоторой помощи для продолжения. Проблема в том, что как только я заполню форму, в которой есть заголовок, поля тела и нажмите submit, он должен перенаправить на страницу show.html.erb, вместо этого он выдает ошибку.action create не удалось найти для PostsController
Ошибка: Действие 'создать' не может быть найдено для PostsController
routes.rb
Rails.application.routes.draw do
get "/pages/about" => "pages#about"
get "/pages/contact" => "pages#contact"
get "/posts" => "posts#index"
post "/posts" => "posts#create"
get "/posts/show" => "posts#show", as: :show
get "/posts/new" => "posts#new"
end
posts_controller_tests.rb
require 'test_helper'
class PostsControllerTest < ActionController::TestCase
def index
end
def new
@post = Post.new
end
def create
@post = Post.new(post_params)
@post.save
redirect_to show_path
end
def show
end
private
def post_params
params.require(:post).permit(:title, :body)
end
end
новый. html.erb
<h1>Create a new blog post</h1>
<div class="form">
<%= form_for Post.new do |f| %>
<%= f.label :title %>: <br>
<%= f.text_field :title %> <br> <br>
<%= f.label :body %>: <br>
<%= f.text_area :body %> <br> <br>
<%= f.submit %>
<% end %>
</div>
Любая помощь по этому вопросу будут оценены.
Можете ли вы добавить форму на вопрос, будет полезно –
Пожалуйста отправьте сообщение об ошибке. – mudasobwa
Отправьте ссылку на учебник, если он онлайн. Может быть полезно. –