text / image post参数的参数错误不能包含nil

时间:2015-09-09 02:56:30

标签: ruby-on-rails ruby arguments

我得到的错误就是这个 - First argument in form cannot contain nil or be empty. 这是有问题的代码:

<%= form_for @text_post do |f| %>

<%= form_for @image_post do |f| %>

以下是图片帖子控制器操作

的代码
class ImagePostsController < ApplicationController
  def new
    @image_post = ImagePost.new
  end

  def create 
    @image_post = current_user.image_posts.build(image_post_params)
    if @image_post.save
      redirect_to post_path(@image_post),
      notice: "Post created!"
    else
      render :new, alert: "Error creating post."
    end
  end

  def update
    @image_post = current_user.image_posts.find(params[:id])
    if @image_post.update(image_post_params)
       redirect_to post_path(@image_post), 
      notice: "Post updated!"
    else
      render :edit, alert: "Error updating post."
    end
  end

  private

  def image_post_params
    params.require(:image_post).permit(:title, :url, :body)
  end
end

文本帖子控制器是相同的代码,只有text代替image。 我清楚地定义了图像和文本帖子,所以我不确定为什么我会收到此错误。任何人都有任何想法???

0 个答案:

没有答案