【问题标题】:About validation in rails 4关于 Rails 4 中的验证
【发布时间】:2016-04-27 14:24:01
【问题描述】:
我在使用模态弹出窗口进行验证时遇到问题。这是我的index.html.haml:
.container-index
%h1 所有帖子都在这里
%button.btn.btn-info(type="button" data-toggle="modal" data-target="#myModal") 新帖
= 渲染“表格”
- @posts.each 做 |post|
.col-md-4
%h3= 链接到 post.title,post
%p=post.content
= "#{time_ago_in_words post.created_at} 前"
_form.html.haml:
。容器
= simple_form_for current_user.posts.build 做 |f|
%div.modal.fade#myModal(tabindex="-1" role="dialog" aria-labelledby="myModalLabel")
%div.modal-dialog(role="document")
%div.modal 内容
%div.modal-header
%button.close(type="button" data-dismiss="modal" aria-label="Close")
%span(aria-hidden="true") ×
%h3.modal-title#myModalLabel 新帖子
%div.modal-body
= f.input :title, label:"Title",class:'form-group',name: 'title'
= f.input :content, label:'Content',class:'form-group',name:'content'
%div.modal-footer
%button.btn.btn-danger#mynewpostclose(type="button" data-dismiss="modal") 关闭
= f.submit '创建',类:“btn btn-primary”
post.rb:
验证:标题,存在:真
验证:内容,存在:真
posts_controller.rb:
before_action :find_post,仅:[:show, :edit, :update, :destroy]
before_action :authenticate_user!,除了:[:index, :show]
定义索引
@posts = Post.all.order("created_at DESC")
结尾
定义新
@post = current_user.posts.build
结尾
定义创建
@post = current_user.posts.build(post_params)
如果@post.save
redirect_to @post,注意:“创建成功”
别的
渲染“新”
结尾
结尾
定义显示
结尾
定义编辑
结尾
定义更新
如果@post.update(post_params)
redirect_to @post,注意:“更新成功”
别的
渲染“编辑”
结尾
结尾
定义破坏
@post.destroy
redirect_to posts_path(@post),注意:'删除成功'
结尾
私人的
def find_post
@post = Post.find(params[:id])
结尾
def post_params
params.require(:post).permit(:title, :content)
结尾
我不知道如何显示警告
当我创建没有任何标题或内容的新帖子时
它将链接到空白页面并且不创建任何新帖子
我只是想在提交时在模态中调用警告,任何人都可以帮助我,plzz?
【问题讨论】:
-
我认为你应该在 simple_form_for .... remote: true 中使用 JavaScript,在 JS 中你将能够添加错误
-
你能清楚一点吗,plzz?我以前从来没有用过这种方式
标签:
ruby-on-rails-4