from django.contrib import admin from django.urls import reverse from django.utils.html import format_html from company_data.models import CompanyResearchInfo class CompanyResearchInfoAdmin(admin.ModelAdmin): list_display = ['company_name', 'legal_entity_name', 'shareholder_nature', 'action_buttons'] search_fields = ['company_name'] # 根据问卷名称进行搜索 list_filter = ['shareholder_nature'] # 添加过滤器 # 修改列表页属性 def action_buttons(self, obj): view_name = 'admin:company_data_companyresearchinfo_change' # 定义视图名称,这是Django admin中用于编辑对象的视图 format_string = '编辑 ''删除' # 定义按钮的HTML格式,其中的"{}"将被下面的`url`替换 url = reverse(view_name, args=[obj.pk]) # 使用Django的`reverse`函数生成编辑页面的URL,其中`args=[obj.pk]`表示将对象的主键作为参数传递给视图 return format_html(format_string, url, url) # 使用Django的`format_html`函数将格式字符串和URL组合成HTML代码 action_buttons.short_description = '操作' # 设置该方法在Django admin界面中的显示名称为"操作" # 修改编辑页属性 fieldsets = ( ('工商信息', {'fields': ( ("company_name", "legal_entity_name", "shareholder_nature"), 'main_business', )}), ('股东及董监高', {'fields': ( ("senior_management_experience", "has_board", "board_members_count"), ("has_supervisory_board", "supervisory_members_count", "annual_support_funds"), )}), ('人员信息', {'fields': ( ("management_staff_count", "functional_staff_count", "sales_staff_count"), ("technical_service_staff_count", "bachelors_or_above_count", "below_bachelors_count"), ("year_end_total_employees", "annual_resignation_count", "training_participation_count"), ("average_weekly_working_days", "average_daily_working_hours", "work_related_casualties") )}), ('经营情况', {'fields': ( ("sales_amount", "returns_amount", "privacy_breach_incidents"), ("total_service_times", "valid_customer_complaints", "complaints_resolved", "complaint_response_time"), )}), ('经营场所信息', {'fields': ( ("operating_site_area", "operating_site_location", "operating_site_ownership") )}), ('银行账户信息', {'fields': ( ("rmb_account_bank_name", "rmb_bank_account"), ("foreign_currency_bank_name", "foreign_currency_bank_account"), "loan_card_number" )}), ('公司制度', {'fields': ( ("has_quality_management_system", "has_financial_management_system", "has_contract_management_system", "has_hr_management_system"), )}), ('补充信息', {'fields': ( ("social_responsibility_implementation", "business_credit_record"), ("customs_credit_record", "bank_credit_record"), ("court_credit_record", "production_safety_information") )}), ) admin.site.register(CompanyResearchInfo, CompanyResearchInfoAdmin)