0

送信ボタンをクリックすると、値が空の投稿が作成されます。Railsコンソールで投稿を作成しても問題ありません。何か案は?

_form.html.erb

<%= form_for(@post) do |f| %>
<div class="field">
    <%= f.label :title %>
    <%= f.text_field :title %>
</div>

<div class="field">
    <%= f.label :body %><br>
    <%= f.text_area :body %>
</div>

<div class="field">
    <%= f.label :user_id %><br>
    <%= f.number_field :user_id %>
</div>

<div class="actions">
    <%= f.submit %>
</div>
<% end %>

投稿。コントローラー

class PostsController < ApplicationController

    def index
        @posts = Post.all
    end

    def new
        @post = Post.new
    end

    def create
        @post = Post.new(post_params)
        @post.save!
        redirect_to posts_path
    end

    private
    def post_params
        params.require(:post).permit(:title, :body, :user_id)
    end

end
4

1 に答える 1

1

Post.new(post_params) を実行する代わりに Post.new(params[:post]) を実行すると、うまくいきますか?

サーバーログで送信された内容を確認すると、問題が見つかる可能性があります。

于 2013-06-02T17:30:00.787 に答える