diff options
Diffstat (limited to 'chimere/main/forms.py')
-rw-r--r-- | chimere/main/forms.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/chimere/main/forms.py b/chimere/main/forms.py index dc1fbad..89d8a5a 100644 --- a/chimere/main/forms.py +++ b/chimere/main/forms.py @@ -30,7 +30,7 @@ from django.core.mail import EmailMessage, BadHeaderError from chimere import settings from chimere.main.models import Marker, Route, PropertyModel, Property, Area,\ - News, Category, SubCategory + News, Category, SubCategory, RouteFile from chimere.main.widgets import AreaField, PointField, TextareaWidget from datetime import timedelta, datetime, tzinfo @@ -214,6 +214,8 @@ class RouteForm(RouteAdminForm): """ picture = forms.ImageField(label=_("Image"), required=False) point = forms.CharField(label=" ", required=False, widget=forms.HiddenInput) + associated_file_id = forms.CharField(label=" ", required=False, + widget=forms.HiddenInput) class Meta: model = Route exclude = ('status',) @@ -225,9 +227,18 @@ class RouteForm(RouteAdminForm): def save(self, *args, **keys): """ - Custom save method in order to manage associated marker + Custom save method in order to manage associated marker and file """ new_route = super(RouteForm, self).save(*args, **keys) + # associate a route file + if 'associated_file_id' in self.cleaned_data and \ + self.cleaned_data['associated_file_id']: + #try: + file_pk = int(self.cleaned_data['associated_file_id']) + new_route.associated_file = RouteFile.objects.get(pk=file_pk) + new_route.save() + #except: + #pass marker_fields = [f.attname for f in Marker._meta.fields] marker_dct = dict([(k, self.cleaned_data[k]) for k in self.cleaned_data if k in marker_fields]) |