Class: Admin::Base::Resource::IndexConfig
- Inherits:
-
Object
- Object
- Admin::Base::Resource::IndexConfig
- Defined in:
- lib/admin/base/resource.rb
Overview
Index view configuration
Instance Attribute Summary collapse
-
#columns_list ⇒ Object
readonly
Returns the value of attribute columns_list.
-
#default_sort ⇒ Object
readonly
Returns the value of attribute default_sort.
-
#default_sort_direction ⇒ Object
readonly
Returns the value of attribute default_sort_direction.
-
#filters_list ⇒ Object
readonly
Returns the value of attribute filters_list.
-
#per_page ⇒ Object
readonly
Returns the value of attribute per_page.
-
#searchable_fields ⇒ Object
readonly
Returns the value of attribute searchable_fields.
-
#sortable_fields ⇒ Object
readonly
Returns the value of attribute sortable_fields.
-
#stats_list ⇒ Object
readonly
Returns the value of attribute stats_list.
Instance Method Summary collapse
- #columns(&block) ⇒ Object
- #filters(&block) ⇒ Object
-
#initialize ⇒ IndexConfig
constructor
A new instance of IndexConfig.
- #paginate(count) ⇒ Object
- #searchable(*fields) ⇒ Object
- #sortable(*fields, default: nil, direction: :desc) ⇒ Object
- #stats(&block) ⇒ Object
Constructor Details
#initialize ⇒ IndexConfig
Returns a new instance of IndexConfig.
246 247 248 249 250 251 252 253 254 255 |
# File 'lib/admin/base/resource.rb', line 246 def initialize @searchable_fields = [] @sortable_fields = [] @default_sort = nil @default_sort_direction = :desc @columns_list = [] @filters_list = [] @stats_list = [] @per_page = 25 end |
Instance Attribute Details
#columns_list ⇒ Object (readonly)
Returns the value of attribute columns_list.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def columns_list @columns_list end |
#default_sort ⇒ Object (readonly)
Returns the value of attribute default_sort.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def default_sort @default_sort end |
#default_sort_direction ⇒ Object (readonly)
Returns the value of attribute default_sort_direction.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def default_sort_direction @default_sort_direction end |
#filters_list ⇒ Object (readonly)
Returns the value of attribute filters_list.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def filters_list @filters_list end |
#per_page ⇒ Object (readonly)
Returns the value of attribute per_page.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def per_page @per_page end |
#searchable_fields ⇒ Object (readonly)
Returns the value of attribute searchable_fields.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def searchable_fields @searchable_fields end |
#sortable_fields ⇒ Object (readonly)
Returns the value of attribute sortable_fields.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def sortable_fields @sortable_fields end |
#stats_list ⇒ Object (readonly)
Returns the value of attribute stats_list.
243 244 245 |
# File 'lib/admin/base/resource.rb', line 243 def stats_list @stats_list end |
Instance Method Details
#columns(&block) ⇒ Object
271 272 273 274 275 |
# File 'lib/admin/base/resource.rb', line 271 def columns(&block) builder = ColumnsBuilder.new builder.instance_eval(&block) if block_given? @columns_list = builder.columns end |
#filters(&block) ⇒ Object
277 278 279 280 281 |
# File 'lib/admin/base/resource.rb', line 277 def filters(&block) builder = FiltersBuilder.new builder.instance_eval(&block) if block_given? @filters_list = builder.filters end |
#paginate(count) ⇒ Object
267 268 269 |
# File 'lib/admin/base/resource.rb', line 267 def paginate(count) @per_page = count end |
#searchable(*fields) ⇒ Object
257 258 259 |
# File 'lib/admin/base/resource.rb', line 257 def searchable(*fields) @searchable_fields = fields end |
#sortable(*fields, default: nil, direction: :desc) ⇒ Object
261 262 263 264 265 |
# File 'lib/admin/base/resource.rb', line 261 def sortable(*fields, default: nil, direction: :desc) @sortable_fields = fields if fields.any? @default_sort = default || fields.first @default_sort_direction = direction end |
#stats(&block) ⇒ Object
283 284 285 286 287 |
# File 'lib/admin/base/resource.rb', line 283 def stats(&block) builder = StatsBuilder.new builder.instance_eval(&block) if block_given? @stats_list = builder.stats end |