Skip to content
Rails form builder for bootstrap semantic-ui and any ui
Ruby JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
app/assets/javascripts/default_form
bin
examples
lib
test
.gitignore
.gitmodules
Gemfile
LICENSE
README.en.md
README.md
Rakefile
default_form.gemspec

README.md

default_form

Build Status

English

default_form只是为Rails提供的一系列表单方法设置了一些默认值和行为,然后这些默认的设置可以在配置文件、controller层,from_tag方法参数,field方法参数四个级别进行 overwrite,和配置。使用default_form我们只需要这样写表单:

<%= f.number_field :total_amount %>
<%= f.number_field :fee_amount %>
<%= f.number_field :income_amount %>
<%= f.datetime_field :notified_at %>
<%= f.text_field :buyer_name %>
<%= f.text_field :buyer_identifier %>
<%= f.text_field :buyer_bank %>
<%= f.text_field :comment %>
<%= f.submit %>

特性

  • 基于Rails内建的form builder构建helper,符合rails习惯,rails使用者上手零门槛;

  • 不过度包办,在我们本来就熟练掌握 input 的 type 知识和 rails 的 filed 系列方法的情况下,写text_filed 相比simple_form的 input 写法会更灵活一些,代码表达更清晰。

  • 更容易定制,更小的学习成本;

如何使用

  1. default_form_with 替代 form_with

  2. 推荐用法:用`default_form_builder' 指定 FromBuilder

default_form_builder 可以接受任意字符参数,default_form 会动态定义一个子类继承自 DefaultForm::FormBuilder

class AdminAreaController < ApplicationController
  default_form_builder DefaultForm::FormBuilder
end
class AdminAreaController < ApplicationController

  default_form_builder 'ExampleBuilder' do |config|
    config.on.xxx = ''
    config.css.xxx = ''
  end
  
end

如何定制

这个gem的思路只是为每个form helper method 设置了默认值, 如果不需要默认值,

1.直接覆盖即可

f.text_filed class: 'xxx'

2.也可以在一个很简单的配置文件中关闭一些行为, 具体参见examples下的例子。

You can’t perform that action at this time.