def add_activity(request): if request.user.is_staff: if request.method == 'POST': form = ActivityForm(request.POST) # A form bound to the POST data if form.is_valid(): # All validation rules pass activity = form.save(commit=False) activity.publisher = request.user activity.save() return redirect('/search_activity?operate=1') else: form = ActivityForm() return render(request, 'add_activity.html', { 'form': form, }) else: return render(request,'permission_error.html')
def create(request): from datetime import datetime form = ActivityForm(request.POST) if form.is_valid(): ac = form.save(commit=False) ac.organizer = request.user.profile.realname ac.save() return {'status': 0} return { 'status': 103, 'error_info': form.errors, 'user_info': u'bad parameters', }
def modify_activity(request,id): user = request.user if user.is_staff: try: activity = Activity.objects.get(id=id) if request.method == 'POST': form = ActivityForm(request.POST,instance=activity) if form.is_valid(): form.save() return redirect('/search_activity?operate=2') else: form = ActivityForm(instance=activity) return render(request, 'modify_activity.html', {'form': form,'id':id}) except Activity.DoesNotExist: return redirect('/search_activity?operate=5') else: return render(request,'permission_error.html')
def _copyActivityToForm(self, acti, displayName): """Copy relevant fields from Activity to ActivityForm.""" af = ActivityForm() for field in af.all_fields(): if hasattr(acti, field.name): # convert Date to date string; just copy others if field.name=='date': setattr(af, field.name, str(getattr(acti, field.name))) elif field.name=='participants': setattr(af, field.name, (",".join(getattr(acti, field.name)))) else: setattr(af, field.name, (getattr(acti, field.name))) elif field.name == "websafeKey": setattr(af, field.name, acti.key.urlsafe()) if displayName: setattr(af, 'organizerDisplayName', displayName) af.check_initialized() return af
def create(request): from datetime import datetime form = ActivityForm(request.POST) if form.is_valid(): ac = form.save(commit=False) ac.organizer = request.user.profile.realname ac.save() return { 'status': 0 } return { 'status': 103, 'error_info': form.errors, 'user_info': u'bad parameters', }