新手问题 怎么处理 comment/reply 不成功的问题?(就是在 Blog/ 论坛下面写回复时)

cqcn1991 · 2013年02月08日 · 最后由 cqcn1991 回复于 2013年02月14日 · 3052 次阅读

这个问题确实有失水准,但是确实搞不定 对于标准的 scaffold 来说

def create
   if @post.save
         redirect_to 
   else
         render new
end

1.可是,当我们在其他的页面下创建呢?else 下面应该怎么写? 比如说,ruby-china 的回帖,提交空白的话,是不会 render new 的,而是会在本页面直接进行提示。我看了 Ruby-china 的源码,并没有用到 render 和 redirect 2.怎么对于两种情况进行运用?比如说,既可以在 posts/show 下面发 comment,也可以在 comments/new 里面写 comment,这样 render 原来的页面就不适合了吧?

好像是必须得 render 或者 redirect?

  def create  (创建post下面的comment
  @post=Post.find(params[:post_id])
  @comments=@post.comments
  @comment=@post.comments.new(params[:comment])
  @comment.user = current_user
  if @comment.save
    redirect_to @post, notice: "Comment created"
  else
    render 'posts/show'
  end
end

我这样能行,但是我总觉得写得很多余,尤其是@[email protected]

试用 ajax...

#1 楼 @jasl 好主意……完全没想到……

需要 登录 后方可回复, 如果你还没有账号请 注册新账号