Rails Activeadmin 界面构成方法解析
来源:互联网 发布:数据质量监控系统 编辑:程序博客网 时间:2024/06/13 21:43
以一个PMS系统中的供应商界面的功能来做例子,并没有将界面与后台代码解偶,而是绑定在了一起。controller是这个文件,view也是这个界面,只有model是另外的文件,这是rails的要求。该界面数据和数据库的一张表,或者说一个model相对应。一个界面就和一张数据表绑定,非绑定数据界面另放view中render。理解这一点才能更好的理解功能的实现。
#supplier.rb文件:ActiveAdmin.register Supplier do#permit_params:允许数据库传到界面的参数 permit_params :supplier_code, :supplier_type, :supplier_name, :supplier_simple, :company_address, :company_tel, :company_fax, :supplier_status, :company_account, :account_name, :company_tax, :supplier_order, :contact_count, :attachment_count, :material_count, :remark, :operator_id, :payment_term#分页开启,和每页数据量 config.paginate = true config.per_page = 20 #默认排序 config.sort_order = 'supplier_order' #禁用功能 config.filters = false config.batch_actions = false#绑定的数据表的信息展示,将展示的信息做处理,如果不写这段,数据表中的数据仍然会显示, 但是会显示所有字段,并且显示的列名为数据表的字段名,从网页显示的角度来说并不美观index :title => '供应商列表' do selectable_column #id_column column "编码", :supplier_code column "类别", :supplier_type_name column "名称", :supplier_name column "公司地址", :company_address column "状态", :supplier_status_name column "备注", :remark column "属性" do |f| if f.attachment_count > 0 span do image_tag "/assets/icons/address.png", height: '20', width: '20', title: "有附件" end end end actions end#界面方法,如非绑定数据界面的后台方法的 collection_action :get_users, :method => :post do supplier_id = params[:id] render json: SupplierContact.format_contact_data(supplier_id) end collection_action :save_contact, :method => :post do render json: SupplierContact.save_contact_data(params) end#form表单显示 和index一样是一种数据展示的方式,其他的还有grid,Table,blog,Blocks#form do |f| f.inputs "供应商信息" do #只有新建时才更新 if resource.supplier_code.present? supplier_code = resource.supplier_code else supplier_code = Base.get_model_code('GYS', 4, 'supplier') end f.input :supplier_code, :hint => "供应商唯一编号", :input_html => { :value => supplier_code, :readonly => true}, :label=> "供应商编号" f.input :supplier_name, :label=> "供应商全称", :required => true f.input :supplier_simple, :label=> "简称" f.input :supplier_type, :as => :select, :collection => resource.supplier_type_ary, :include_blank => false, :label=> "供应商类别" f.input :supplier_status, :as => :select, :collection => resource.supplier_status_ary, :include_blank => false, :label=> "供应商状态" f.input :company_address, :label=> "公司地址" f.input :company_tel, :label=> "公司座机" f.input :company_fax, :label=> "公司传真" f.input :company_account, :label=> "公司账户" f.input :account_name, :label=> "账户名称" f.input :company_tax, :label=> "税号" f.input :payment_term, :label=> "付款周期" f.input :remark, :input_html => { :rows => "5"}, :label=> "备注" f.input :operator_id, :as => :hidden, :input_html => {:value => current_active_admin_user.id} end f.actions end end其他相关:http://blog.csdn.net/feng88724/article/details/49124281
阅读全文
0 0
- Rails Activeadmin 界面构成方法解析
- Android 的界面构成
- Allow Users to Authenticate With Username Only Using Devise, ActiveAdmin, Rails 4 and Ruby 2
- ruby on rails界面常用控件写法以及rails常用方法
- jsp页面构成解析
- ActiveAdmin安装
- ActiveAdmin国际化
- ActiveAdmin 数据管理
- 平面构成的方法
- Intent组件构成,解析机制
- TabLayout+viewpager构成主流软件界面
- rails Helper 解析
- rails 部分插件--解析
- rails json解析器
- ActiveAdmin 自定义表单
- ActiveAdmin 自定义列表页
- ActiveAdmin 数据导出
- ActiveAdmin扩展:级联选择
- 浅谈Angular中ngModel的$render
- 基于深度学习的自然场景文字识别
- (120)创建时间轴
- 初窥Spring之依赖注入
- 监听器如何获取Spring配置文件
- Rails Activeadmin 界面构成方法解析
- 搜索二叉树的基本操作
- 通过loosejar 清理程序无用jar包
- PI清除IDOC缓存
- Android 杂知识总结
- 画出网络结构
- 提高编码技能的10个窍门
- 如何高效利用GitHub
- VS2008工程中 附加依赖项 和 附加库目录