diff --git a/lib/templates/erb/scaffold/_form.html.erb.tt b/lib/templates/erb/scaffold/_form.html.erb.tt index 697bebd10..ac2a41155 100644 --- a/lib/templates/erb/scaffold/_form.html.erb.tt +++ b/lib/templates/erb/scaffold/_form.html.erb.tt @@ -1,6 +1,6 @@ <%%= simple_form_for(@<%= singular_table_name %>) do |f| %> <%%= f.error_notification %> - <%%= f.error_notification message: f.object.errors[:base].to_sentence if f.object.errors[:base].present? %> + <%%= render 'shared/errors', resource: @<%= singular_table_name %> if @<%= singular_table_name %>.errors.any? %>
<%% @<%= singular_table_name %>.attribute_names.reject { |a| ["id", "created_at", "updated_at"].include?(a) }.each do |attr| %> @@ -10,11 +10,13 @@ <%% end %>
-
- <% if @<%= singular_table_name %>.persisted? && current_user.super_user? %> - <%%= link_to "Delete", @<%= singular_table_name %>, method: :delete, data: { confirm: "Are you sure?" }, class: "btn btn-outline-danger" %> - <% end %> - <%%= link_to "Cancel", <%= plural_table_name %>_path, class: "btn btn-outline-secondary" %> - <%%= f.button :submit, class: "btn btn-outline-primary ms-2" %> +
+ <%% if @<%= singular_table_name %>.persisted? && current_user.super_user? %> + <%%= link_to_button "Delete", @<%= singular_table_name %>, method: :delete, variant: :danger_outline, data: { confirm: "Are you sure?" } %> + <%% end %> + <%%= link_to_button "Cancel", <%= plural_table_name %>_path, variant: :secondary_outline %> + <%%= f.button :submit, class: 'inline-flex items-center gap-2 px-4 py-2 rounded-lg + transition-colors duration-200 font-medium shadow-sm text-sm + border border-blue-600 text-grey-600 hover:bg-blue-600 hover:text-white' %>
<%% end %> diff --git a/lib/templates/erb/scaffold/edit.html.erb.tt b/lib/templates/erb/scaffold/edit.html.erb.tt index 61e8d5571..33a505e11 100644 --- a/lib/templates/erb/scaffold/edit.html.erb.tt +++ b/lib/templates/erb/scaffold/edit.html.erb.tt @@ -1,6 +1,12 @@ -
-
-

Edit <%%= @<%= singular_table_name %>.class.model_name.human %>

- <%%= render "form", locals: { <%= singular_table_name %>: @<%= singular_table_name %> } %> +
+
+
+

Edit <%%= @<%= singular_table_name %>.class.model_name.human %>

+
+
+ <%%= render 'form', <%= singular_table_name %>: @<%= singular_table_name %> %> +
+
+ <%%= link_to_button 'View', <%= singular_table_name %>_path(@<%= singular_table_name %>), variant: :secondary_outline %>
diff --git a/lib/templates/erb/scaffold/index.html.erb.tt b/lib/templates/erb/scaffold/index.html.erb.tt index a9f9349f1..73d0e803e 100644 --- a/lib/templates/erb/scaffold/index.html.erb.tt +++ b/lib/templates/erb/scaffold/index.html.erb.tt @@ -1,43 +1,58 @@ -
-
-
-
-

<%%= <%= plural_table_name.classify %>.model_name.human.pluralize %>

-
+
+ +
+
+

<%%= <%= plural_table_name.classify %>.model_name.human.pluralize %>

-
-
- <%%= link_to 'New ' + <%= singular_table_name.classify %>.model_name.human, new_<%= singular_table_name %>_path, class: "btn btn-outline-primary" %> -
+
+ <%%= link_to_button('New ' + <%= singular_table_name.classify %>.model_name.human.downcase, + new_<%= singular_table_name %>_path, + variant: :primary_outline) %>
-
- -
- - - - <%% attributes = @<%= plural_table_name %>.first.attributes.keys if @<%= plural_table_name %>.any? %> - <%% attributes&.each do |attribute| %> - - <%% end %> - - - +
- - <%% @<%= plural_table_name %>.each do |<%= singular_table_name %>| %> + +
+
<%%= attribute.humanize %>Edit
+ + <%% if @<%= plural_table_name %>.any? %> - <%% attributes.each do |attribute| %> - + <%% attributes = @<%= plural_table_name %>.first.attributes.keys - ["id", "created_at", "updated_at"] if @<%= plural_table_name %>.any? %> + <%% attributes&.each do |attribute| %> + <%% end %> - + - <%% end %> - -
<%%= <%= singular_table_name %>[attribute] %><%%= attribute.humanize %><%%= link_to 'Edit', edit_<%= singular_table_name %>_path(<%= singular_table_name %>) %>Edit
+ <%% end %> + + + + <%% @<%= plural_table_name %>.each do |<%= singular_table_name %>| %> + + <%% attributes.each do |attribute| %> + + <%%= <%= singular_table_name %>[attribute] %> + + <%% end %> + + <%%= link_to_button 'Edit', edit_<%= singular_table_name %>_path(<%= singular_table_name %>), + variant: :secondary_outline %> + + + <%% end %> + + +
+ + + <%% unless @<%= plural_table_name %>.any? %> +

No <%%= <%= plural_table_name.classify %>.model_name.human.pluralize %> found.

+ <%% end %> -
- <%<%= will_paginate @<%= plural_table_name %>, :previous_label => '<<', :next_label => '>>', :inner_window => 2 %> + +
+ <%%= will_paginate @<%= plural_table_name %>, previous_label: '<<', next_label: '>>', + class: 'flex space-x-2' %>
diff --git a/lib/templates/erb/scaffold/new.html.erb.tt b/lib/templates/erb/scaffold/new.html.erb.tt index 1ed9e5302..dac099f89 100644 --- a/lib/templates/erb/scaffold/new.html.erb.tt +++ b/lib/templates/erb/scaffold/new.html.erb.tt @@ -1,6 +1,7 @@ -
-
-

New <%%= @<%= singular_table_name %>.class.model_name.human %>

- <%%= render "form", locals: { <%= singular_table_name %>: @<%= singular_table_name %> } %> +
+

New <%%= <%= plural_table_name.classify %>.model_name.human %>

+
+
+ <%%= render 'form', <%= singular_table_name %>: @<%= singular_table_name %> %>
-
\ No newline at end of file +
diff --git a/lib/templates/erb/scaffold/show.html.erb.tt b/lib/templates/erb/scaffold/show.html.erb.tt index 983247208..943059f3c 100644 --- a/lib/templates/erb/scaffold/show.html.erb.tt +++ b/lib/templates/erb/scaffold/show.html.erb.tt @@ -1,23 +1,24 @@ -
-
- <%%= link_to "Edit", edit_<%= singular_table_name %>_path(@<%= singular_table_name %>), class: "btn btn-outline-primary" if current_user.super_user? %> -
-
+
+
+
+ <%%= link_to_button("Index", <%= plural_table_name %>_path, variant: :secondary_outline) %> + <%% if current_user.super_user? %> + <%%= link_to_button("Edit", edit_<%= singular_table_name %>_path, variant: :primary_outline) %> + <%% end %> +
+
+

<%%= <%= plural_table_name.classify %>.model_name.human %> Details

+ +
-
-
-

<%%= @<%= singular_table_name %>.class.model_name.human %> Details

+ <% attributes.each do |attribute| -%> +
+

<%= attribute.human_name %>:

+

<%%= @<%= singular_table_name %>.<%= attribute.name %> %>

+
+ <% end -%> - - - <%% attributes = @<%= singular_table_name %>.attributes.keys if @<%= singular_table_name %> %> - <%% attributes&.each do |attribute| -%> - - - - - <%% end -%> - -
<%%= attribute.humanize %><%%= @<%= singular_table_name %>.send(attribute) %>
+
+
diff --git a/lib/templates/rails/scaffold_controller/controller.rb.tt b/lib/templates/rails/scaffold_controller/controller.rb.tt index c7206b474..3fd4af006 100644 --- a/lib/templates/rails/scaffold_controller/controller.rb.tt +++ b/lib/templates/rails/scaffold_controller/controller.rb.tt @@ -2,6 +2,8 @@ class <%= controller_class_name %>Controller < ApplicationController before_action :set_<%= singular_table_name %>, only: [:show, :edit, :update, :destroy] + layout 'tailwind' + def index per_page = params[:number_of_items_per_page].presence || 25 @<%= plural_table_name %> = <%= orm_class.all(class_name) %>.paginate(page: params[:page], per_page: per_page)