LocationGroupCategory.title_plural
This commit is contained in:
parent
4ccbbd0491
commit
f915210cf2
3 changed files with 74 additions and 7 deletions
|
@ -95,7 +95,8 @@ class EditorFormBase(ModelForm):
|
|||
field = ChoiceField(label=category.title, required=False, initial=initial, choices=choices)
|
||||
else:
|
||||
name = 'groups_'+category.name
|
||||
field = MultipleChoiceField(label=category.title, required=False, initial=initial, choices=choices)
|
||||
field = MultipleChoiceField(label=category.title_plural, required=False,
|
||||
initial=initial, choices=choices)
|
||||
self.fields[name] = field
|
||||
|
||||
if 'category' in self.fields:
|
||||
|
@ -182,7 +183,8 @@ class EditorFormBase(ModelForm):
|
|||
|
||||
|
||||
def create_editor_form(editor_model):
|
||||
possible_fields = ['slug', 'name', 'title', 'ordering', 'category', 'width', 'groups', 'color', 'priority',
|
||||
possible_fields = ['slug', 'name', 'title', 'title_plural',
|
||||
'ordering', 'category', 'width', 'groups', 'color', 'priority',
|
||||
'base_altitude', 'waytype', 'access_restriction', 'height', 'default_height', 'door_height',
|
||||
'outside', 'can_search', 'can_describe', 'geometry', 'single', 'altitude', 'short_label',
|
||||
'allow_levels', 'allow_spaces', 'allow_areas', 'allow_pois', 'left', 'top', 'right', 'bottom']
|
||||
|
|
61
src/c3nav/mapdata/migrations/0054_title_plural.py
Normal file
61
src/c3nav/mapdata/migrations/0054_title_plural.py
Normal file
|
@ -0,0 +1,61 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.11.6 on 2017-11-30 15:28
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import c3nav.mapdata.fields
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('mapdata', '0053_i18nfield'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='locationgroupcategory',
|
||||
name='title_plural',
|
||||
field=c3nav.mapdata.fields.I18nField(fallback_any=True, plural_name='titles_plural', verbose_name='Title (Plural)'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='accessrestriction',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='area',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='level',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='locationgroup',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='locationgroupcategory',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(fallback_any=True, plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='poi',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='space',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='waytype',
|
||||
name='title',
|
||||
field=c3nav.mapdata.fields.I18nField(blank=True, fallback_any=True, fallback_value='{model} {pk}', plural_name='titles', verbose_name='Title'),
|
||||
),
|
||||
]
|
|
@ -10,6 +10,7 @@ from django.utils.text import format_lazy
|
|||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.utils.translation import ungettext_lazy
|
||||
|
||||
from c3nav.mapdata.fields import I18nField
|
||||
from c3nav.mapdata.models.access import AccessRestrictionMixin
|
||||
from c3nav.mapdata.models.base import SerializableMixin, TitledMixin
|
||||
from c3nav.mapdata.utils.models import get_submodels
|
||||
|
@ -178,9 +179,11 @@ class SpecificLocation(Location, models.Model):
|
|||
return (0, groups[0].category.priority, groups[0].priority)
|
||||
|
||||
|
||||
class LocationGroupCategory(TitledMixin, models.Model):
|
||||
class LocationGroupCategory(SerializableMixin, models.Model):
|
||||
name = models.SlugField(_('Name'), unique=True, max_length=50)
|
||||
single = models.BooleanField(_('single selection'), default=False)
|
||||
title = I18nField(_('Title'), plural_name='titles', fallback_any=True)
|
||||
title_plural = I18nField(_('Title (Plural)'), plural_name='titles_plural', fallback_any=True)
|
||||
allow_levels = models.BooleanField(_('allow levels'), db_index=True, default=True)
|
||||
allow_spaces = models.BooleanField(_('allow spaces'), db_index=True, default=True)
|
||||
allow_areas = models.BooleanField(_('allow areas'), db_index=True, default=True)
|
||||
|
@ -197,11 +200,12 @@ class LocationGroupCategory(TitledMixin, models.Model):
|
|||
default_related_name = 'locationgroupcategories'
|
||||
ordering = ('-priority', )
|
||||
|
||||
def _serialize(self, **kwargs):
|
||||
result = super()._serialize(**kwargs)
|
||||
def _serialize(self, detailed=True, **kwargs):
|
||||
result = super()._serialize(detailed=detailed, **kwargs)
|
||||
result['name'] = self.name
|
||||
result.move_to_end('name', last=False)
|
||||
result.move_to_end('id', last=False)
|
||||
if detailed:
|
||||
result['titles'] = self.titles
|
||||
result['title'] = self.title
|
||||
return result
|
||||
|
||||
def register_changed_geometries(self):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue