71 lines
2.1 KiB
Python
71 lines
2.1 KiB
Python
from django.contrib import admin
|
|
|
|
from .models import (
|
|
AiAnalysisCache,
|
|
Application,
|
|
ApplicationTimelineEvent,
|
|
Employer,
|
|
Feedback,
|
|
FieldProvenance,
|
|
GeocodeLocationLookup,
|
|
JobPosting,
|
|
JobSourceAlias,
|
|
JobVersion,
|
|
ScoreRun,
|
|
)
|
|
|
|
|
|
@admin.register(Employer)
|
|
class EmployerAdmin(admin.ModelAdmin):
|
|
list_display = ("name", "domain", "is_direct_employer", "is_recruiter", "confidence")
|
|
list_filter = ("is_direct_employer", "is_recruiter", "employer_type")
|
|
search_fields = ("name", "normalized_name", "domain")
|
|
|
|
|
|
class JobSourceAliasInline(admin.TabularInline):
|
|
model = JobSourceAlias
|
|
extra = 0
|
|
readonly_fields = ("source", "canonical_url", "external_id", "extraction_method", "last_seen")
|
|
|
|
|
|
@admin.register(JobPosting)
|
|
class JobPostingAdmin(admin.ModelAdmin):
|
|
list_display = ("original_title", "employer", "region", "status", "first_seen", "valid_through")
|
|
list_filter = ("status", "workplace_type", "direct_employer", "recruiter", "language")
|
|
search_fields = ("original_title", "normalized_title", "employer__name", "description_text")
|
|
inlines = [JobSourceAliasInline]
|
|
|
|
|
|
@admin.register(ScoreRun)
|
|
class ScoreRunAdmin(admin.ModelAdmin):
|
|
list_display = ("job", "profile", "score", "confidence", "recommendation", "created_at")
|
|
list_filter = ("recommendation", "profile")
|
|
|
|
|
|
admin.site.register(JobVersion)
|
|
admin.site.register(FieldProvenance)
|
|
admin.site.register(Feedback)
|
|
admin.site.register(Application)
|
|
admin.site.register(ApplicationTimelineEvent)
|
|
admin.site.register(AiAnalysisCache)
|
|
|
|
|
|
@admin.register(GeocodeLocationLookup)
|
|
class GeocodeLocationLookupAdmin(admin.ModelAdmin):
|
|
list_display = (
|
|
"query_kind",
|
|
"query_value",
|
|
"postal_code",
|
|
"municipality",
|
|
"region",
|
|
"latitude",
|
|
"longitude",
|
|
"source_name",
|
|
"source_version",
|
|
"confidence",
|
|
"updated_at",
|
|
)
|
|
list_filter = ("source_name", "source_version", "query_kind")
|
|
search_fields = ("query_value", "municipality", "postal_code", "source_name", "source_version")
|
|
readonly_fields = ("created_at", "updated_at")
|