示例#1
0
def add_publisher(request):
    if request.method == "POST":
        formulario = PublisherForm(request.POST)
        if formulario.is_valid():
            formulario.save()
            return HttpResponseRedirect("/add_publisher/thanks/")
    else :
        formulario = PublisherForm()
    
    return render_to_response("add_publisher.html",{"form":formulario})
示例#2
0
文件: views.py 项目: EchoLiao/lang
def add_publisher(request):
    if request.method == 'POST':
        form = PublisherForm(request.POST)
        if form.is_valid():
            # 从 form_for_model 而来的表单对象包含一个 save() 方法.
            form.save()
            return HttpResponseRedirect('/contact/thanks/')
    else:
        form = PublisherForm()
    return render_to_response('books/add_publisher.html', {'form': form})
示例#3
0
def publisher():
	form = PublisherForm(formdata=request.form or None)
	if request.method == 'POST':
		if request.form and form.validate():
			p = Publisher(name=form.name.data, address=form.address.data)
			db.session.add(p)
			db.session.commit()
			return redirect(url_for('publisher'))
		else:
		    flash('There was an error with your input: %s' % form.errors)
		    return redirect(url_for('publisher'))
		
	else:
		publishers = Publisher.query.all()
		return render_template('publisher.html', publishers=publishers, form=form)
示例#4
0
def new_publisher():
    form = PublisherForm()
    if request.method == "GET":
        return render_template('edit_publisher.html', form=form, status='new')
    elif request.method == 'POST':
        if form.validate_on_submit():
            data_services.create_publisher(name=form.name.data,
                                           founded=form.founded.data,
                                           location=form.location.data)
            flash('Publisher created successfully', 'success')
        else:
            for k, v in form.errors.items():
                flash(v[0], 'danger')
            return render_template('edit_publisher.html',
                                   form=form,
                                   status='new')

        return redirect('/publisher/list')
示例#5
0
def add_publisher(request):
    if request.method == 'POST':
        form = PublisherForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/add_publisher/')
    else:
            form = PublisherForm()
    return render_to_response('books/add_publisher.html', {'form': form})
示例#6
0
def add_publisher(request):
    if request.method == 'POST':
        form = PublisherForm(request.POST)
        if form.is_valid():
            # 从 form_for_model 而来的表单对象包含一个 save() 方法.
            form.save()
            return HttpResponseRedirect('/contact/thanks/')
    else:
        form = PublisherForm()
    return render_to_response('books/add_publisher.html', {'form': form})
示例#7
0
def new_publisher(request):
    FORM_TITLE_NEW = _('New Publisher')
    FORM_TITLE_EDIT = _('Editing %s')

    main = get_renderer(BASE_TEMPLATE).implementation()
    
    localizer = get_localizer(request)
    publisher_form = PublisherForm.get_form(localizer)
    
    if request.method == 'POST':

        controls = request.POST.items()
        try:
            appstruct = publisher_form.validate(controls)
        except deform.ValidationFailure, e:
            return {'content':e.render(),
                    'main':main,
                    'user':get_logged_user(request),
                    'form_stuff':{'form_title':FORM_TITLE_NEW},
                    }
        del(appstruct['__LOCALE__'])
        session = request.rel_db_session

        if 'slug' in request.matchdict: 
            #edit
            slug = request.matchdict.get('slug')
            publisher = session.query(rel_models.Publisher).filter_by(name_slug=slug).one()
            
            publisher.email = appstruct['email']
            publisher.publisher_url = appstruct['publisher_url']
    
        else:
            #new
            publisher = rel_models.Publisher(**appstruct)

        session.add(publisher)
            
        try:
            session.commit()
        except IntegrityError:
            session.rollback()
            request.session.flash(_('This record already exists! Please check the data and try again.'))
            return {'content':publisher_form.render(appstruct),
                    'main':main,
                    'user':get_logged_user(request),
                    'form_stuff':{'form_title':FORM_TITLE_NEW},
                    }

        request.session.flash(_('Successfully added.'))

        return HTTPFound(location=request.route_url('staff.panel'))
示例#8
0
def edit_publisher(id):
    form = PublisherForm()
    publisher = data_services.get_publisher(id)
    if request.method == "GET":
        form = PublisherForm(obj=publisher)
        return render_template('edit_publisher.html', form=form, status='edit')
    elif request.method == 'POST':
        if form.update.data:
            if form.validate_on_submit():
                data_services.update_publisher(publisher=publisher,
                                               name=form.name.data,
                                               founded=form.founded.data,
                                               location=form.location.data)
                flash('Publisher created successfully', 'success')
            else:
                for k, v in form.errors.items():
                    flash(v[0], 'danger')
                return render_template('edit_publisher.html',
                                       form=form,
                                       status='edit')
        elif form.delete.data:
            data_services.delete_publisher(publisher=publisher)
            flash('Publisher deleted successfully', 'success')
        return redirect('/publisher/list')
def add_publisher(request):
    c = {}
    c.update(csrf(request))
    if request.method == 'POST':
        form = PublisherForm(request.POST)
        if form.is_valid():
            name1 = form.cleaned_data['name']
            website1 = form.cleaned_data['website']
            a = Publisher.objects.filter(name=name1, website=website1)
            if not Publisher.objects.filter(name=name1, website=website1):
                form.save()
                return HttpResponseRedirect('/add_publisher/thanks/')
        else:
            form = PublisherForm()
    else:
        form = PublisherForm()

    c['form'] = form
    return render_to_response('books/add_publisher.html', c)
示例#10
0
def new_publisher(request):
        form = PublisherForm()
        return render_to_response('books/add_publisher.html', {'form': form})
示例#11
0
def new_publisher(request):
    FORM_TITLE_NEW = _('New Publisher')
    FORM_TITLE_EDIT = '%s'

    main = get_renderer(BASE_TEMPLATE).implementation()

    localizer = get_localizer(request)
    publisher_form = PublisherForm.get_form(localizer)

    if request.method == 'POST':
        if 'btn_cancel' in request.POST:
            return HTTPFound(
                location=request.route_path('staff.publishers_list'))

        controls = request.POST.items()
        try:
            appstruct = publisher_form.validate(controls)
        except deform.ValidationFailure, e:
            return {
                'content': e.render(),
                'main': main,
                'user': get_logged_user(request),
                'general_stuff': {
                    'form_title':
                    FORM_TITLE_NEW,
                    'breadcrumb': [
                        (_('Dashboard'), request.route_path('staff.panel')),
                        (_('Manage Publishers'),
                         request.route_path('staff.publishers_list')),
                        (_('New Publisher'), None),
                    ]
                },
            }
        del (appstruct['__LOCALE__'])
        session = request.rel_db_session

        if 'slug' in request.matchdict:
            #edit
            slug = request.matchdict.get('slug')
            publisher = session.query(
                rel_models.Publisher).filter_by(name_slug=slug).one()

            publisher.email = appstruct['email']
            publisher.publisher_url = appstruct['publisher_url']

        else:
            #new
            publisher = rel_models.Publisher(**appstruct)

        session.add(publisher)

        try:
            session.commit()
        except IntegrityError:
            session.rollback()
            request.session.flash(
                _('This record already exists! Please check the data and try again.'
                  ))
            return {
                'content': publisher_form.render(appstruct),
                'main': main,
                'user': get_logged_user(request),
                'general_stuff': {
                    'form_title':
                    FORM_TITLE_NEW,
                    'breadcrumb': [
                        (_('Dashboard'), request.route_path('staff.panel')),
                        (_('Manage Publishers'),
                         request.route_path('staff.publishers_list')),
                        (_('New Publisher'), None),
                    ]
                },
            }

        request.session.flash(_('Successfully added.'))

        return HTTPFound(location=request.route_path('staff.publishers_list'))