【问题标题】:How to create customize view for rails admin?如何为 Rails 管理员创建自定义视图?
【发布时间】:2016-09-06 06:33:18
【问题描述】:

目前,我正在使用 rails_admin gem 进行管理仪表板显示的项目。但是view是根据Model字段自动生成的。

我想在管理仪表板中显示我的视图。 在rails admin中显示自定义视图的过程是什么?

【问题讨论】:

    标签: ruby-on-rails ruby rails-admin


    【解决方案1】:
    config.model Utility do
      configure :preview do
        pretty_value do
          util = bindings[:object]
          %{<div class="blah">
            #{util.name} #{util.phone} #{util.logo}
          </div >}
        end
        children_fields [:name, :phone, :logo] # will be used for searching/filtering, first field will be used for sorting
        read_only true # won't be editable in forms (alternatively, hide it in edit section)
      end
    
      list do
        field :code
        field :priority
        field :preview
      end
    
      show do
        field :code
        field :priority
        field :preview
      end
    
      # other sections will show all fields
    end
    

    通过简单的配置,只需添加一个rails_admin 块并将一个类方法写入您的模型,然后调用该方法。

    app/models/demo.rb
    rails_admin do 
      def self.full_name
        "#{first_name} #{last_name}"
      end
    end
    

    现在调用这个方法,它会返回全名,例如。

    【讨论】:

    • 谢谢。您是否有机会修改它以从单独的模板文件中提取自定义视图 html,而不是直接在配置代码中?
    • 当然,你可以这样做,只要你有模型对象,你可以在另一个模板中编写一个方法并使用它。
    【解决方案2】:

    您可以使用自己的部分:

    RailsAdmin.config do |config|
     config.model 'Team' do
      edit do
       field :name do
        partial "my_awesome_partial"
       end
      end
     end
    end
    

    部分应放在您的应用程序模板文件夹中,例如app/views/rails_admin/main/_my_awesome_partial.html.erb。

    该对象可从带有form.object 的部分中获得。 请check here。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-07-09
      • 1970-01-01
      • 2023-03-18
      • 1970-01-01
      • 2019-06-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多