from django.forms import Form, ModelForm, \ CharField, IntegerField, DecimalField, \ BooleanField, EmailField, DateTimeField, ImageField, \ formset_factory from django_countries.fields import CountryField from phonenumber_field.formfields import PhoneNumberField from .models import * class PersonForm(ModelForm): class Meta: model = Person fields = [ 'name', 'surname', 'nationality', 'email', 'phone' ] """ name = CharField(label='Name', max_length=50) surname = CharField(label='Surname', max_length=50) nationality = CountryField().formfield(label='Nationality') email = EmailField(label='E-Mail') phone = PhoneNumberField(label='Phone Number') """ class AddressForm(ModelForm): class Meta: model = Address fields = [ 'address', 'zip_code', 'city', 'country' ] class DockForm(ModelForm): class Meta: model = Dock fields = [ 'name', 'length', 'width', 'depth_min', 'depth_max'] """ name = CharField(label='Name', max_length=10) length = DecimalField( label='Length', min_value=0, max_digits=7, decimal_places=2) width = DecimalField( label='Width', min_value=0, max_digits=7, decimal_places=2) depth_min = DecimalField( label='Depth (min.)', min_value=0, max_digits=7, decimal_places=2) depth_max = DecimalField( label='Depth (max.)', min_value=0, max_digits=7, decimal_places=2) """ DockFormSet = formset_factory(DockForm) class PortForm(ModelForm): class Meta: model = Port fields = [ 'name', 'address', 'company'] """ name = CharField(label='Name', max_length=50) address = CharField(label='Address', max_length=50) company = CharField(label='Company', max_length=50) """ class PlugForm(ModelForm): class Meta: model = Plug fields = [ 'name', 'amperage', 'voltage', ] """ name = CharField(label='Name', max_length=10) amperage = DecimalField( label='Amperage', min_value=0, max_digits=3, decimal_places=0) voltage = DecimalField( label='Voltage', min_value=0, max_digits=3, decimal_places=0) """ PlugFormSet = formset_factory(PlugForm) class TapForm(ModelForm): class Meta: model = Tap fields = [ 'name'] """ name = CharField(label='Name', max_length=10) """ TapFormSet = formset_factory(TapForm) class BoatForm(ModelForm): class Meta: model = Boat fields = ['name', 'registration_num', 'length', 'beam', 'water_draught', 'tonnage', 'water_tank', 'model', 'heating', 'passenger_capacity', 'picture'] class StayForm(ModelForm): class Meta: model = Stay fields = ['arrival', 'departure', 'coming_from', 'going_to', 'no_mooring'] widgets = { #Use localization and bootstrap 3 'datetime': DateTimeWidget( attrs={'id':"yourdatetimeid"}, usel10n = True) } class MooringForm(ModelForm): class Meta: model = Mooring fields = ['date', 'dock', 'tap', 'plug'] MooringFormSet = formset_factory(MooringForm)