diff --git a/apps/pr/admin.py b/apps/pr/admin.py index 78a659a..a3ea614 100644 --- a/apps/pr/admin.py +++ b/apps/pr/admin.py @@ -10,6 +10,7 @@ class AIConfigAdmin(AjaxAdmin): list_display = ["api_base", "api_key", "llm_model"] readonly_fields = ["create_by", "delete_at", "detail"] + list_per_page = 10 top_html = ' ' def save_model(self, request, obj, form, change): @@ -23,6 +24,7 @@ class GitConfigAdmin(AjaxAdmin): list_display = ["git_name", "git_type", "git_url", "access_token"] readonly_fields = ["create_by", "delete_at", "detail"] + list_per_page = 10 top_html = '' def save_model(self, request, obj, form, change): @@ -37,10 +39,13 @@ class ProjectConfigAdmin(AjaxAdmin): list_display = [ "project_id", "project_name", + "pr_url", "project_secret", "commands", "is_enable", ] + list_filter = ["git_config"] + list_per_page = 10 readonly_fields = ["create_by", "delete_at", "detail"] top_html = '' @@ -48,15 +53,32 @@ class ProjectConfigAdmin(AjaxAdmin): obj.create_by = request.user.username return super().save_model(request, obj, form, change) + def pr_url(self, obj): + return f'{obj.project_name}' + + pr_url.short_description = "项目地址" + @admin.register(models.ProjectHistory) class ProjectHistoryAdmin(admin.ModelAdmin): """Admin配置""" - list_display = ["project", "mr_url", "source_branch", "target_branch", "mr_title"] + list_display = ["pr_url", "ml", "source_branch", "target_branch", "mr_title"] list_filter = ["project"] + readonly_fields = ["create_by", "delete_at", "detail"] list_per_page = 10 def save_model(self, request, obj, form, change): obj.create_by = request.user.username return super().save_model(request, obj, form, change) + + # @staticmethod + def ml(self, obj): + return f'{obj.mr_title}' + + ml.short_description = "MR地址" + + def pr_url(self, obj): + return f'{obj.project.project_name}' + + pr_url.short_description = "项目地址" diff --git a/apps/pr/migrations/0003_projectconfig_project_url.py b/apps/pr/migrations/0003_projectconfig_project_url.py new file mode 100644 index 0000000..e4fa907 --- /dev/null +++ b/apps/pr/migrations/0003_projectconfig_project_url.py @@ -0,0 +1,20 @@ +# Generated by Django 5.1.6 on 2025-02-27 11:40 + +import simplepro.components.fields +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ("pr", "0002_projecthistory"), + ] + + operations = [ + migrations.AddField( + model_name="projectconfig", + name="project_url", + field=simplepro.components.fields.CharField( + blank=True, max_length=256, null=True, verbose_name="项目地址" + ), + ), + ] diff --git a/apps/pr/models.py b/apps/pr/models.py index 9e1cf5f..e370e43 100644 --- a/apps/pr/models.py +++ b/apps/pr/models.py @@ -79,6 +79,9 @@ class ProjectConfig(BaseModel): project_name = fields.CharField( null=True, blank=True, max_length=16, verbose_name="项目名称" ) + project_url = fields.CharField( + null=True, blank=True, max_length=256, verbose_name="项目地址" + ) project_secret = fields.CharField( null=True, blank=True, max_length=128, verbose_name="项目密钥" )