Class: EasyAdmin::ResourcesController
Constant Summary
EasyAdmin::ResourceVersions::DEFAULT_VERSIONS_PER_PAGE, EasyAdmin::ResourceVersions::MAX_VERSIONS_PER_PAGE
Instance Method Summary
collapse
#belongs_to_edit_attached, #belongs_to_reattach, #update_belongs_to_attached
#edit_field, #suggest, #update_field
#load_record_versions, #record_has_versions?, #revert_version, #version_diff, #version_statistics, #versions
#policy_for
Instance Method Details
#chart ⇒ Object
46
47
48
49
50
51
52
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 46
def chart
chart_config = find_chart_config(params[:chart_id])
render turbo_stream: turbo_stream.replace(
"chart-#{params[:chart_id]}",
EasyAdmin::LazyChartCardComponent.new(chart_config: chart_config, record: @record)
)
end
|
#create ⇒ Object
66
67
68
69
70
71
72
73
74
75
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 66
def create
@record = @resource_class.model_class.new(record_params)
if @record.save
redirect_to easy_admin.resource_path(@resource_class.route_key, @record),
notice: "#{@resource_class.singular_title} was successfully created."
else
render :new, status: :unprocessable_entity
end
end
|
#destroy ⇒ Object
104
105
106
107
108
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 104
def destroy
@record.destroy
redirect_to easy_admin.resources_path(@resource_class.route_key),
notice: "#{@resource_class.singular_title} was successfully deleted."
end
|
#edit ⇒ Object
77
78
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 77
def edit
end
|
#index ⇒ Object
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 13
def index
respond_to do |format|
format.html do
if turbo_frame_request?
@current_params = params.permit(:search, :scope, :sort, :direction, :period, :page, q: {})
render template: 'easy_admin/resources/index_frame', layout: false
else
end
end
format.turbo_stream do
render turbo_stream: build_infinite_scroll_turbo_stream
end
end
end
|
#metric ⇒ Object
Lazy loading endpoints for show page components
38
39
40
41
42
43
44
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 38
def metric
metric_config = find_metric_config(params[:metric_id])
render turbo_stream: turbo_stream.replace(
"metric-#{params[:metric_id]}",
EasyAdmin::LazyMetricCardComponent.new(metric_config: metric_config, record: @record)
)
end
|
#new ⇒ Object
62
63
64
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 62
def new
@record = @resource_class.model_class.new
end
|
#show ⇒ Object
34
35
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 34
def show
end
|
#tab_content ⇒ Object
54
55
56
57
58
59
60
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 54
def tab_content
tab_config = find_tab_config(params[:tab_name])
render turbo_stream: turbo_stream.replace(
"tab-#{params[:tab_name]}-content",
render_tab_elements(tab_config[:elements])
)
end
|
#update ⇒ Object
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
# File 'app/controllers/easy_admin/resources_controller.rb', line 80
def update
if @record.update(record_params)
respond_to do |format|
format.html {
redirect_to easy_admin.resource_path(@resource_class.route_key, @record),
notice: "#{@resource_class.singular_title} was successfully updated."
}
format.turbo_stream {
render turbo_stream: [
turbo_stream.update("notifications",
EasyAdmin::NotificationComponent.new(
type: :success,
message: "#{@resource_class.singular_title} was successfully updated!",
title: "Success"
).call
)
]
}
end
else
render :edit, status: :unprocessable_entity
end
end
|