From 94d08628683bd29da7b83c1729731bc1829d8006 Mon Sep 17 00:00:00 2001 From: chenjing <28122123@qq.com> Date: Fri, 25 Aug 2023 11:46:30 +0800 Subject: [PATCH] add page theme destroy limitation --- .../admins/page_themes_controller.rb | 5 +++++ app/models/attachment.rb | 2 -- app/models/identity_verification.rb | 2 +- app/models/license.rb | 1 - app/models/member.rb | 1 - app/models/organization_user.rb | 1 - app/models/project.rb | 3 --- app/models/project_category.rb | 1 - app/models/project_language.rb | 4 ---- app/models/repository.rb | 1 - app/models/user_extension.rb | 4 ++-- .../admins/page_themes/_form_modal.html.erb | 18 +++++++++--------- 12 files changed, 17 insertions(+), 26 deletions(-) diff --git a/app/controllers/admins/page_themes_controller.rb b/app/controllers/admins/page_themes_controller.rb index 5e211ab55..e8fe728fc 100644 --- a/app/controllers/admins/page_themes_controller.rb +++ b/app/controllers/admins/page_themes_controller.rb @@ -30,6 +30,11 @@ class Admins::PageThemesController < Admins::BaseController end def destroy + if PageTheme.where(language_frame: @page_theme.language_frame).count <= 1 + flash[:danger] = "删除主题失败,必须存在一个主题" + return redirect_to admins_page_themes_path + end + if @page_theme.destroy redirect_to admins_page_themes_path flash[:success] = "删除主题成功" diff --git a/app/models/attachment.rb b/app/models/attachment.rb index f79aca153..0c056f60c 100644 --- a/app/models/attachment.rb +++ b/app/models/attachment.rb @@ -26,8 +26,6 @@ # cloud_url :string(255) default("") # course_second_category_id :integer default("0") # delay_publish :boolean default("0") -# memo_image :boolean default("0") -# extra_type :integer default("0") # # Indexes # diff --git a/app/models/identity_verification.rb b/app/models/identity_verification.rb index 3c8c88d9b..983755b16 100644 --- a/app/models/identity_verification.rb +++ b/app/models/identity_verification.rb @@ -17,7 +17,7 @@ # # Indexes # -# index_identity_verifications_on_user_id (user_id) +# index_identity_verifications_on_number (number) # class IdentityVerification < ApplicationRecord diff --git a/app/models/license.rb b/app/models/license.rb index f84e63573..d14a9db14 100644 --- a/app/models/license.rb +++ b/app/models/license.rb @@ -7,7 +7,6 @@ # content :text(65535) # created_at :datetime not null # updated_at :datetime not null -# is_secret :boolean default("0") # class License < ApplicationRecord diff --git a/app/models/member.rb b/app/models/member.rb index aaaf34efc..521f939c5 100644 --- a/app/models/member.rb +++ b/app/models/member.rb @@ -11,7 +11,6 @@ # course_group_id :integer default("0") # is_collect :integer default("1") # graduation_group_id :integer default("0") -# is_apply_signature :boolean default("0") # team_user_id :integer # # Indexes diff --git a/app/models/organization_user.rb b/app/models/organization_user.rb index 900710a9a..4ff6946b7 100644 --- a/app/models/organization_user.rb +++ b/app/models/organization_user.rb @@ -5,7 +5,6 @@ # id :integer not null, primary key # user_id :integer # organization_id :integer -# is_creator :boolean default("0") # created_at :datetime not null # updated_at :datetime not null # diff --git a/app/models/project.rb b/app/models/project.rb index 5f9fcef68..1f27a55ad 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -62,7 +62,6 @@ # # Indexes # -# index_projects_on_forked_count (forked_count) # index_projects_on_forked_from_project_id (forked_from_project_id) # index_projects_on_identifier (identifier) # index_projects_on_invite_code (invite_code) @@ -72,7 +71,6 @@ # index_projects_on_license_id (license_id) # index_projects_on_name (name) # index_projects_on_platform (platform) -# index_projects_on_praises_count (praises_count) # index_projects_on_project_category_id (project_category_id) # index_projects_on_project_language_id (project_language_id) # index_projects_on_project_type (project_type) @@ -80,7 +78,6 @@ # index_projects_on_rgt (rgt) # index_projects_on_status (status) # index_projects_on_updated_on (updated_on) -# index_projects_on_user_id (user_id) # class Project < ApplicationRecord diff --git a/app/models/project_category.rb b/app/models/project_category.rb index bc6f8427d..97a304259 100644 --- a/app/models/project_category.rb +++ b/app/models/project_category.rb @@ -15,7 +15,6 @@ # Indexes # # index_project_categories_on_ancestry (ancestry) -# index_project_categories_on_id (id) # class ProjectCategory < ApplicationRecord diff --git a/app/models/project_language.rb b/app/models/project_language.rb index 22a4a81ff..0770a1efa 100644 --- a/app/models/project_language.rb +++ b/app/models/project_language.rb @@ -9,10 +9,6 @@ # created_at :datetime not null # updated_at :datetime not null # -# Indexes -# -# index_project_languages_on_id (id) -# class ProjectLanguage < ApplicationRecord include Projectable diff --git a/app/models/repository.rb b/app/models/repository.rb index 7d3f207ea..f2815dde7 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -27,7 +27,6 @@ # # Indexes # -# index_name (project_id) # index_repositories_on_identifier (identifier) # index_repositories_on_project_id (project_id) # index_repositories_on_user_id (user_id) diff --git a/app/models/user_extension.rb b/app/models/user_extension.rb index aeb9a9d83..ef4af5fd3 100644 --- a/app/models/user_extension.rb +++ b/app/models/user_extension.rb @@ -22,9 +22,9 @@ # school_id :integer # description :string(255) # department_id :integer -# province :text(65535) -# custom_department :string(255) +# province :string(255) # city :string(255) +# custom_department :string(255) # show_email :boolean default("0") # show_location :boolean default("0") # show_department :boolean default("0") diff --git a/app/views/admins/page_themes/_form_modal.html.erb b/app/views/admins/page_themes/_form_modal.html.erb index eb3dd6742..720566d9e 100644 --- a/app/views/admins/page_themes/_form_modal.html.erb +++ b/app/views/admins/page_themes/_form_modal.html.erb @@ -9,15 +9,15 @@ <%= form_for @page_theme, url: {controller: "page_themes", action: "#{type}"}, html: { enctype: 'multipart/form-data' } do |p| %>