Edit LocationGroupCategory objects in Editor
This commit is contained in:
parent
4a58c1afab
commit
6a6af47528
4 changed files with 10 additions and 2 deletions
|
@ -35,6 +35,9 @@ class MapitemFormMixin(ModelForm):
|
|||
self.fields['groups'].label_from_instance = lambda obj: obj.title_for_forms
|
||||
self.fields['groups'].queryset = LocationGroup.objects.all()
|
||||
|
||||
if 'category' in self.fields:
|
||||
self.fields['category'].label_from_instance = lambda obj: obj.title
|
||||
|
||||
# parse titles
|
||||
self.titles = None
|
||||
if hasattr(self.instance, 'titles'):
|
||||
|
@ -53,6 +56,9 @@ class MapitemFormMixin(ModelForm):
|
|||
self.fields.move_to_end('title_' + language, last=False)
|
||||
self.titles = titles
|
||||
|
||||
if 'name' in self.fields:
|
||||
self.fields.move_to_end('name', last=False)
|
||||
|
||||
self.redirect_slugs = None
|
||||
self.add_redirect_slugs = None
|
||||
self.remove_redirect_slugs = None
|
||||
|
@ -100,7 +106,7 @@ def create_editor_form(editor_model):
|
|||
possible_fields = ['slug', 'name', 'altitude', 'category', 'width', 'groups', 'color', 'public',
|
||||
'can_search', 'can_describe', 'outside', 'stuffed', 'geometry',
|
||||
'left', 'top', 'right', 'bottom']
|
||||
field_names = [field.name for field in editor_model._meta.get_fields()]
|
||||
field_names = [field.name for field in editor_model._meta.get_fields() if not field.one_to_many]
|
||||
existing_fields = [name for name in possible_fields if name in field_names]
|
||||
|
||||
class EditorForm(MapitemFormMixin, ModelForm):
|
||||
|
|
|
@ -44,6 +44,7 @@ urlpatterns = [
|
|||
url(r'^logout$', logout_view, name='editor.logout'),
|
||||
]
|
||||
urlpatterns.extend(add_editor_urls('Level', with_list=False, explicit_edit=True))
|
||||
urlpatterns.extend(add_editor_urls('LocationGroupCategory'))
|
||||
urlpatterns.extend(add_editor_urls('LocationGroup'))
|
||||
urlpatterns.extend(add_editor_urls('Source'))
|
||||
urlpatterns.extend(add_editor_urls('Building', 'Level'))
|
||||
|
|
|
@ -25,6 +25,7 @@ def main_index(request):
|
|||
'levels': Level.objects.filter(on_top_of__isnull=True),
|
||||
'can_edit': request.changeset.can_edit(request),
|
||||
'child_models': [
|
||||
child_model(request.changeset.wrap_model('LocationGroupCategory')),
|
||||
child_model(request.changeset.wrap_model('LocationGroup')),
|
||||
child_model(request.changeset.wrap_model('Source')),
|
||||
],
|
||||
|
|
|
@ -166,7 +166,7 @@ class LocationGroupCategory(TitledMixin, models.Model):
|
|||
|
||||
class LocationGroup(Location, models.Model):
|
||||
category = models.ForeignKey(LocationGroupCategory, related_name='groups', on_delete=models.PROTECT,
|
||||
verbose_name=_('Location Group Category'))
|
||||
verbose_name=_('Category'))
|
||||
compiled_room = models.BooleanField(default=False, verbose_name=_('is a compiled room'))
|
||||
compiled_area = models.BooleanField(default=False, verbose_name=_('is a compiled area'))
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue