You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.2 KiB
49 lines
1.2 KiB
from django import forms
|
|
from django.contrib import admin
|
|
|
|
from .models import (
|
|
Answer,
|
|
BuildingClassfication,
|
|
Candidate,
|
|
ConstructionType,
|
|
Order,
|
|
Portfolio,
|
|
PortfolioPhoto,
|
|
Project,
|
|
ProjectFile,
|
|
Realty,
|
|
Stage,
|
|
)
|
|
|
|
|
|
class ProjectAdminForm(forms.ModelForm):
|
|
files = forms.ModelMultipleChoiceField(queryset=ProjectFile.objects.none(), required=False)
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
super().__init__(*args, **kwargs)
|
|
|
|
if self.instance.pk:
|
|
self.fields['files'].queryset = self.instance.files
|
|
|
|
|
|
class ProjectAdmin(admin.ModelAdmin):
|
|
readonly_fields = ('pk',)
|
|
list_display = ('name','pk','customer','state')
|
|
form = ProjectAdminForm
|
|
|
|
|
|
class StageAdmin(admin.ModelAdmin):
|
|
list_display = ('name','status','pos','order','is_paid',)
|
|
|
|
|
|
admin.site.register(Answer)
|
|
admin.site.register(Portfolio)
|
|
admin.site.register(PortfolioPhoto)
|
|
admin.site.register(Realty)
|
|
admin.site.register(Order)
|
|
admin.site.register(Candidate)
|
|
admin.site.register(Stage, StageAdmin)
|
|
admin.site.register(BuildingClassfication)
|
|
admin.site.register(ConstructionType)
|
|
admin.site.register(Project, ProjectAdmin)
|
|
admin.site.register(ProjectFile)
|
|
|