質問編集履歴

3 改善

atage517

atage517 score 36

2020/07/04 15:45  投稿

rails で form_tagをしたらリンク先でUnknown actionとでる
```ここに言語を入力
<%= form_tag("/posts/create") do%>
.
.
.
<% end %>
```
でnew action を create actionに form_tagで送り create action から /posts/indexにredirectしたいのですが以下のエラーが出ます
```ここに言語を入力
Unknown action
The action 'create' could not be found for PostsController
```
**自分のRuby on Railsのコード**
```ここに言語を入力
   <%= form_tag("/posts/create") do %>
   <div class="form">
     <div class="form-title">
       <input name="title">
     </div>
     <div class="form-body">
       <textarea name="question"></textarea>
       <textarea name="content"></textarea>
       <br>
       <input type="submit" value="投稿">
     </div>
   </div>
   <% end %>
```
```ここに言語を入力
class PostsController < ApplicationController
def index
   @posts = Post.all
end
def show
 @post = Post.find_by(id: params[:id])
end
def new
end
def create
 @post = Post.new(title: params[:title], question: params[:question])
 @post = Post.new(title: params[:title], content: params[:content])
 @post.save
 redirect_to("/posts/index")
end
end
```
```ここに言語を入力
 get "posts/index" => "posts#index"
 get "posts/new" => "posts#new"
 get "posts/:id" => "posts#show"
 post "posts/create" => "posts#create"
```
何が原因なのでしょうか?
  • Ruby

    15013 questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails

    15934 questions

    Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

2 修正

atage517

atage517 score 36

2020/07/04 15:43  投稿

rails で form_tagをしたらリンク先でUnknown actionとでる
```ここに言語を入力
<%= form_tag("/posts/create") do%>
.
.
.
<% end %>
```
でnew action を create actionに form_tagで送り create action から /posts/indexにredirectしたいのですが以下のエラーが出ます
```ここに言語を入力
Unknown action
The action 'create' could not be found for PostsController
```
**自分のRuby on Railsのコード**
```ここに言語を入力
   <%= form_tag("/posts/create") do %>
   <div class="form">
     <div class="form-title">
       <input name="title">
     </div>
     <div class="form-body">
       <textarea name="question"></textarea>
       <br>
       <input type="submit" value="投稿">
     </div>
   </div>
   <% end %>
```
```ここに言語を入力
class PostsController < ApplicationController
def index
   @posts = Post.all
end
def show
 @post = Post.find_by(id: params[:id])
end
def new
end
def create
 @post = Post.new(title: params[:title], question: params[:title])
 @post = Post.new(title: params[:title], question: params[:question])
 @post.save
 redirect_to("/posts/index")
end
end
```
```ここに言語を入力
 get "posts/index" => "posts#index"
 get "posts/new" => "posts#new"
 get "posts/:id" => "posts#show"
 post "posts/create" => "posts#create"
```
何が原因なのでしょうか?
  • Ruby

    15013 questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails

    15934 questions

    Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

1 改善

atage517

atage517 score 36

2020/07/04 15:42  投稿

rails で form_tagをしたらリンク先でUnknown actionとでる
```ここに言語を入力
<%= form_tag("/posts/create") do%>
.
.
.
<% end %>
```
でnew action を create actionに form_tagで送り create action から /posts/indexにredirectしたいのですが以下のエラーが出ます
```ここに言語を入力
Unknown action
The action 'create' could not be found for PostsController
```
**自分のRuby on Railsのコード**
```ここに言語を入力
   <%= form_tag("/posts/create") do %>
   <div class="form">
     <div class="form-title">
       <input name="title">
     </div>
     <div class="form-body">
       <textarea name="question"></textarea>
       <br>
       <input type="submit" value="投稿">
     </div>
   </div>
   <% end %>
```
```ここに言語を入力
class PostsController < ApplicationController
def index
   @posts = Post.all
end
def show
 @post = Post.find_by(id: params[:id])
end
def new
end
def create
 @post = Post.new(title: params[:title], question: params[:title])  
 @post.save  
 redirect_to("/posts/index")
end
end
```
```ここに言語を入力
 get "posts/index" => "posts#index"
 get "posts/new" => "posts#new"
 get "posts/:id" => "posts#show"
 post "posts/create" => "posts#create"
```
何が原因なのでしょうか?
  • Ruby

    15013 questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

  • Ruby on Rails

    15934 questions

    Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る