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.
257 258 259 260 261 262 263 264 265 266 |
# File 'lib/admin/base/resource.rb', line 257 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.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def columns_list @columns_list end |
#default_sort ⇒ Object (readonly)
Returns the value of attribute default_sort.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def default_sort @default_sort end |
#default_sort_direction ⇒ Object (readonly)
Returns the value of attribute default_sort_direction.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def default_sort_direction @default_sort_direction end |
#filters_list ⇒ Object (readonly)
Returns the value of attribute filters_list.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def filters_list @filters_list end |
#per_page ⇒ Object (readonly)
Returns the value of attribute per_page.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def per_page @per_page end |
#searchable_fields ⇒ Object (readonly)
Returns the value of attribute searchable_fields.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def searchable_fields @searchable_fields end |
#sortable_fields ⇒ Object (readonly)
Returns the value of attribute sortable_fields.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def sortable_fields @sortable_fields end |
#stats_list ⇒ Object (readonly)
Returns the value of attribute stats_list.
254 255 256 |
# File 'lib/admin/base/resource.rb', line 254 def stats_list @stats_list end |
Instance Method Details
#columns(&block) ⇒ Object
282 283 284 285 286 |
# File 'lib/admin/base/resource.rb', line 282 def columns(&block) builder = ColumnsBuilder.new builder.instance_eval(&block) if block_given? @columns_list = builder.columns end |
#filters(&block) ⇒ Object
288 289 290 291 292 |
# File 'lib/admin/base/resource.rb', line 288 def filters(&block) builder = FiltersBuilder.new builder.instance_eval(&block) if block_given? @filters_list = builder.filters end |
#paginate(count) ⇒ Object
278 279 280 |
# File 'lib/admin/base/resource.rb', line 278 def paginate(count) @per_page = count end |
#searchable(*fields) ⇒ Object
268 269 270 |
# File 'lib/admin/base/resource.rb', line 268 def searchable(*fields) @searchable_fields = fields end |
#sortable(*fields, default: nil, direction: :desc) ⇒ Object
272 273 274 275 276 |
# File 'lib/admin/base/resource.rb', line 272 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
294 295 296 297 298 |
# File 'lib/admin/base/resource.rb', line 294 def stats(&block) builder = StatsBuilder.new builder.instance_eval(&block) if block_given? @stats_list = builder.stats end |