Changeset 94b3e3f in firmaeventos
- Timestamp:
- Nov 20, 2017, 3:47:37 PM (6 years ago)
- Branches:
- master
- Children:
- 16cf088
- Parents:
- c9f75d7
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
eventos/forms.py
r8fa24c3 r94b3e3f 1 1 2 2 from django import forms 3 from django.forms.fields import ( 4 CharField, BooleanField 5 ) 3 6 4 7 from .models import * … … 14 17 @version 1.0.0 15 18 """ 16 archivo = forms.FileField(widget=forms.ClearableFileInput(17 attrs={'multiple': False}))18 19 #archivo = forms.FileField(widget=forms.ClearableFileInput( 20 #attrs={'multiple': False})) 21 archivo = CharField() 19 22 class Meta: 20 23 """! … … 34 37 self.fields['fecha'].widget.attrs.update( 35 38 {'class': 'datepicker', 36 'placeholder': 'Fecha'}) 39 'placeholder': 'Fecha', 40 'readonly': 41 'readonly'}) 37 42 self.fields['archivo'].required=True 38 43 self.fields['archivo'].widget.attrs.update( 39 {'class': 'file-path', 40 'placeholder': 'Subir Archivo'}) 44 { 45 'class': 'file-path validate', 46 'placeholder': 'Subur un archivo'}) -
eventos/templates/register.event.html
r8fa24c3 r94b3e3f 2 2 {% load staticfiles %} 3 3 {% block title %}Registrar Evento{% endblock title %} 4 {% block extraJs %} 5 <script src="{% static "js/formset.js" %}"></script> 6 <script type="text/javascript"> 7 $(function() { 8 $('#id_orders_table tbody tr').formset({ 9 // For inline formsets, be sure to set the prefix, as the default prefix 10 // ('form') isn't correct. 11 // Django appears to generate the prefix from the lowercase plural 12 // name of the related model, with camel-case converted to underscores. 13 prefix: 'form' 14 }) 15 $('.datepicker').pickadate({ 16 selectMonths: true, // Creates a dropdown to control month 17 selectYears: 15, // Creates a dropdown of 15 years to control year, 18 today: 'Today', 19 clear: 'Clear', 20 close: 'Ok', 21 closeOnSelect: false, // Close upon selecting a date, 22 format: "dd/mm/yyyy", 23 }); 24 }) 25 </script> 26 {%endblock%} 27 4 28 {% block content %} 5 29 <div class="content center"> 30 <h5>Datos del Evento</h5><hr/><br> 6 31 <form id="form" method="post"> 7 32 {% csrf_token %} 8 <div class="input-field {% if form s.event.nombre.errors %}invalid{% endif %}">9 {{ form s.event.nombre}}10 <label for="icon_prefix {{ form s.event.nombre.auto_id }}">Nombre</label>11 {% include 'base.forms.errors.html' with form_errors=form s.event.nombre.errors col_title_error='col s2' col_msg_error='col s10' %}33 <div class="input-field {% if form.nombre_evento.errors %}invalid{% endif %}"> 34 {{ form.nombre_evento }} 35 <label for="icon_prefix {{ form.nombre_evento.auto_id }}">Nombre</label> 36 {% include 'base.forms.errors.html' with form_errors=form.nombre_evento.errors col_title_error='col s2' col_msg_error='col s10' %} 12 37 </div> 13 38 14 <div class="input-field {% if form s.event.fecha.errors %}invalid{% endif %}">15 <i class=" material-icons">perm_contact_calendar</i>16 {{ form s.event.fecha }}17 <label for="icon_prefix {{ form s.event.fecha.auto_id }}">Fecha</label>18 {% include 'base.forms.errors.html' with form_errors=form s.event.fecha.errors col_title_error='col s2' col_msg_error='col s10' %}39 <div class="input-field {% if form.fecha.errors %}invalid{% endif %}"> 40 <i class="tiny material-icons prefix">perm_contact_calendar</i> 41 {{ form.fecha }} 42 <label for="icon_prefix {{ form.fecha.auto_id }}">Fecha</label> 43 {% include 'base.forms.errors.html' with form_errors=form.fecha.errors col_title_error='col s2' col_msg_error='col s10' %} 19 44 </div> 20 45 21 <div class="file-field input-field {% if forms.event.archivo.errors %}invalid{% endif %}"> 22 <i class="material-icons">attachment</i> 46 <div class="file-field input-field {% if form.archivo.errors %}invalid{% endif %}"> 47 48 <div class="btn"> 49 <span for="icon_prefix {{ form.archivo.auto_id }}">Archivo</span> 50 <input type="file"> 51 </div> 23 52 <div class="file-path-wrapper"> 24 {{ form s.event.archivo }}53 {{ form.archivo }} 25 54 </div> 26 <label for="icon_prefix {{ forms.event.archivo.auto_id }}">Archivo</label> 27 {% include 'base.forms.errors.html' with form_errors=forms.event.archivo.errors col_title_error='col s2' col_msg_error='col s10' %} 55 {% include 'base.forms.errors.html' with form_errors=form.archivo.errors col_title_error='col s2' col_msg_error='col s10' %} 28 56 </div> 29 57 <h5>Datos de los Participantes</h5><hr/><br> 58 <table class="striped" id="id_orders_table"> 59 <thead> 60 <tr> 61 <th scope="col">Nombres</th> 62 <th scope="col">Apellidos</th> 63 <th scope="col">Pasaporte</th> 64 <th scope="col">Correo</th> 65 <th scope="col">Opcion</th> 66 </tr> 67 </thead> 68 <tbody> 69 {{ form2.management_form }} 70 {% for form in form2 %} 71 <tr id="{{ form.prefix }}-row"> 72 <td> 73 {{form.nombres}} 74 </td> 75 <td> 76 {{form.apellidos}} 77 </td> 78 <td> 79 {{form.pasaporte}} 80 </td> 81 <td> 82 {{form.correo}} 83 </td> 84 <td></td> 85 </tr> 86 {% endfor %} 87 </tbody> 88 </table> 30 89 <div> 31 90 <button type="submit" class="btn waves-effect red darken-1">Registrar</button> -
eventos/views.py
r8fa24c3 r94b3e3f 1 from django.shortcuts import render 1 from django.contrib import messages 2 from django.core.urlresolvers import reverse_lazy 3 from django.shortcuts import ( 4 render, redirect, get_object_or_404 5 ) 2 6 from multi_form_view import MultiModelFormView 7 from django.views.generic import FormView 3 8 4 9 from .forms import * … … 7 12 ) 8 13 9 class RegisterEvent( MultiModelFormView):14 class RegisterEvent(FormView): 10 15 """! 11 16 Muestra el formulario de registro de usuarios … … 16 21 @version 1.0.0 17 22 """ 23 18 24 template_name = "register.event.html" 19 form_classes = { 20 'event': EventoForm, 21 'participante': FormsetParticipanteEvento, 22 } 23 #success_url = reverse_lazy('users:home') 24 record_id=None 25 form_class = EventoForm 26 form_participante = FormsetParticipanteEvento 27 success_url = reverse_lazy('base:inicio') 28 29 def get_context_data(self, **kwargs): 30 context = super(RegisterEvent, self).get_context_data(**kwargs) 31 if 'form' not in context: 32 context['form'] = self.form_class() 33 if 'form2' not in context: 34 context['form2'] = self.form_participante 35 return context 36 37 def post(self, request, *args, **kwargs): 38 nuevo_evento = self.form_class(request.POST).save(commit=False) 39 nuevo_participante = self.form_participante(request.POST) 40 consulta_api = 1 41 if self.form_class(request.POST).is_valid() and nuevo_participante.is_valid(): 42 nuevo_evento.serial = consulta_api 43 nuevo_evento.save() 44 nuevo_participante.save() 45 messages.success(self.request, "El usaurio %s, ha creado con exito,\ 46 un nuevo envento %s" % 47 (str(self.request.user), 48 str(nuevo_evento))) 49 else: 50 messages.error(self.request, "Existe un error en el Formualario %s" % 51 (str(self.form_class.errors, self.form_participante.errors))) 52 return redirect(self.success_url) -
participantes/forms.py
r8fa24c3 r94b3e3f 2 2 from django.core.exceptions import NON_FIELD_ERRORS 3 3 from django.forms import ( 4 inlineformset_factory, modelform_factory 4 inlineformset_factory, modelform_factory, modelformset_factory, formset_factory 5 5 ) 6 6 … … 26 26 """ 27 27 model = Participante 28 fields= ('nombres', 'apellidos', 'pasaporte', 'correo')28 fields=['nombres', 'apellidos', 'pasaporte', 'correo'] 29 29 30 30 def __init__(self, *args, **kwargs): … … 90 90 fields=('nombres', 'apellidos', 91 91 'pasaporte', 'correo')) 92 93 FormsetParticipanteEvento = modelformset_factory(Participante, form=FormsetParticipanteEvento, fields=('nombres', 'apellidos', 94 'pasaporte', 'correo'), 95 extra=1) 96 97 #FormsetParticipanteEvento= FormsetParticipanteEvento(queryset=Participante.objects.none())
Note: See TracChangeset
for help on using the changeset viewer.