当前位置: 首页>>代码示例>>Python>>正文


Python ItemForm.validate_on_submit方法代码示例

本文整理汇总了Python中forms.ItemForm.validate_on_submit方法的典型用法代码示例。如果您正苦于以下问题:Python ItemForm.validate_on_submit方法的具体用法?Python ItemForm.validate_on_submit怎么用?Python ItemForm.validate_on_submit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在forms.ItemForm的用法示例。


在下文中一共展示了ItemForm.validate_on_submit方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: item_store

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def item_store(category_name):
    """Store new item in DB"""
    if 'username' not in login_session:
        return redirect(url_for('login'))
    category = Category.query.filter(Category.name == category_name).first()
    if category.author_id != login_session['user_id']:
        return render_template('401.html', name='item')
    form = ItemForm()
    form.category_id.choices = [(c.id, c.name)
                                for c in Category.query.order_by('name')]
    form.category_id.data = category.id
    if form.validate_on_submit():
        try:
            new_item = Item(form.name.data,
                            form.description.data,
                            category.id,
                            login_session['user_id'])
            if 'image' in request.files and request.files['image']:
                filename = images.save(request.files['image'])
                new_item.image_name = filename
            db_session.add(new_item)
            db_session.commit()
            return redirect(url_for('item_view',
                                    category_name=category_name,
                                    item_name=form.name.data))
        except IntegrityError:
            db_session.rollback()
            flash("Item name must be unique value")
        except Exception, e:
            db_session.rollback()
            print e
            flash("Database error encountered")
开发者ID:vanadium23,项目名称:catalog-project,代码行数:34,代码来源:views.py

示例2: newItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def newItem():
    """
    newItem: form to add a new item
    Args:
        none
    Returns:
        return add a item and redirect to home or show form to add a new item
    """

    if 'username' not in login_session:
        return redirect('/login')
    try:
        form = ItemForm()

        form.category_id.choices = [(0, 'Select')]
        form.category_id.choices += [(category.id, category.name) for category
                                     in session.query(Categories).
                                     order_by('name')]

        print form.errors

        if form.validate_on_submit():
            title = form.title.data
            category_id = form.category_id.data
            description = form.description.data

            if (form.title.data is not None and
                    form.category_id.data is not None and
                    form.category_id.data is not '0'):

                newItem = Items(title=title,
                                description=description,
                                category_id=category_id,
                                user_id=login_session['user_id'])

                session.add(newItem)
                session.commit()
                flash("New Item Created")

            else:
                flash("Missing required information for Add")
        else:
            return render_template('newitem.html', form=form,
                                   login_session=login_session)
    except:
        flash('Error')
    return redirect(url_for('showHomepage'))
开发者ID:wasay,项目名称:fullstack-nanodegree-vm,代码行数:49,代码来源:views.py

示例3: editItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def editItem(item_id):
    itemForm = ItemForm()
    item = Item.query.get(item_id)
    slist = Slist.query.get(item.slist_id)
    if itemForm.validate_on_submit():
        item.shop = itemForm.shop.data
        item.qnty=itemForm.quantity.data
        item.price=itemForm.price.data
        item.notes=itemForm.notes.data
        coupon = itemForm.coupon.data
        if (coupon == u'нет'):
            coupon = None
        item.coupon=coupon
        db.session.commit()
        return redirect(url_for('shopapp.show_list',slist=slist.name))
    else:
        return redirect(url_for('shopapp.shop_main'))
开发者ID:iredkoz,项目名称:testapp,代码行数:19,代码来源:views.py

示例4: newItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def newItem():
    itemForm = ItemForm()
    if itemForm.validate_on_submit():
        product=Product.query.filter_by(name=itemForm.product_id.data).first()
        slist = Slist.query.filter_by(name=itemForm.slist_id.data).first()
        shop=itemForm.shop.data
        qnty=itemForm.quantity.data
        price=itemForm.price.data
        notes=itemForm.notes.data
        coupon = itemForm.coupon.data
        if (coupon == u'нет'):
            coupon = None
        item = Item(product=product, shop = shop, qnty=qnty, price = price, chk = False, note=notes, slist=slist, coupon=coupon)
        db.session.add(item)
        db.session.commit()
        return redirect(url_for('shopapp.show_list',slist=slist.name))
    else:
        return redirect(url_for('shopapp.shop_main'))
开发者ID:iredkoz,项目名称:testapp,代码行数:20,代码来源:views.py

示例5: items

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def items():
    try:
        log.info('Start reading from DB')
        i_form = ItemForm()
        s_form = SearchForm()
        item_list = db.session.query(Item).all()
        if i_form.validate_on_submit():
            new_item = Item(i_form.sku.data, i_form.title.data)
            db.session.add(new_item)
            db.session.commit()
            i_form.sku.data = ''
            i_form.title.data = ''
            item_list = db.session.query(Item).all()
            return redirect(url_for('items'))
        return render_template('items.html', i_form=i_form, s_form=s_form, item_list=item_list)
    except:
        _, ex, _ = sys.exc_info()
        log.error(ex.message)
        return render_template('items.html', i_form=i_form, s_form=s_form, item_list=item_list)
开发者ID:im-auld,项目名称:Flask_Inventory_Manager,代码行数:21,代码来源:flasktest.py

示例6: addItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def addItem(name):
    """Add an item to a named category or render a form.

    Args: A category name

    Returns: Add an item or render a form.
    """
    # Store named category and the logged in user
    category = Category.query.filter_by(name=name).first_or_404()
    user = Users.query.filter_by(id=login_session["users_id"]).first_or_404()
    # Verify that the logged in user is creator or admin
    if category.users_id != login_session["users_id"] and not user.admin:
        flash(" You are not authorized add items to that category.")
        return redirect(url_for("category.showCategory", name=name))
    # Initiate the form.
    form = ItemForm()
    # On POST of a valid form, add the new item.
    if form.validate_on_submit():
        item = Item(
            form.name.data,
            form.description.data,
            form.amazon_asin.data,
            form.picture.data,
            category.id,
            login_session["users_id"],
        )
        # Check if there is a amazon url, and if so extract asin
        if form.amazon_url.data is not None:
            asin = re.search("[A-Z0-9]{10}", form.amazon_url.data)
            if asin:
                item.amazon_asin = asin.group(0)
        db.session.add(item)
        db.session.commit()
        flash("New Item %s Successfully Created" % item.name)
        # Log new item
        current_app.logger.info("New Item %s Created on %s" % (item.name, str(item.dateCreated)))
        return redirect(url_for("category.showHome"))
    else:
        return render_template("newItem.html", form=form, category=category)
开发者ID:qgreg,项目名称:itemcatalog,代码行数:41,代码来源:views.py

示例7: item_update

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def item_update(category_name, item_name):
    """Update item in DB"""
    if 'username' not in login_session:
        return redirect(url_for('login'))
    item = Item.query.\
        filter(Item.name == item_name).\
        filter(Item.category.has(name=category_name)).\
        first()
    if item.author_id != login_session['user_id']:
        return render_template('401.html', name='item')
    form = ItemForm()
    form.category_id.choices = [(c.id, c.name)
                                for c in Category.query.order_by('name')]
    if form.validate_on_submit():
        try:
            category = Category.query.\
                filter(Category.id == form.category_id.data).\
                first()
            item.name = form.name.data
            item.description = form.description.data
            item.category_id = form.category_id.data
            if 'image' in request.files and request.files['image']:
                filename = images.save(request.files['image'])
                item.image_name = filename
            db_session.add(item)
            db_session.commit()
            return redirect(url_for('item_view',
                                    category_name=category.name,
                                    item_name=form.name.data))
        except IntegrityError:
            db_session.rollback()
            flash("Item name must be unique value")
        except Exception:
            db_session.rollback()
            flash("Database error encountered")
    flash_errors(form)
    return redirect(url_for('item_edit',
                            category_name=category_name,
                            item_name=form.name.data))
开发者ID:vanadium23,项目名称:catalog-project,代码行数:41,代码来源:views.py

示例8: DeleteItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def DeleteItem(list_id, item_id):
	query_list = g.user.lists.filter_by(id = list_id).first()
	query_list_shared = g.user.shared_lists.filter_by(id = list_id).first()

	if query_list is not None or query_list_shared is not None:
		
		item = Item.query.filter_by(id = item_id).first()
		form = ItemForm()

		# We don't need the item name to validate this request.
		del form.item_name

		# We don't need the items checked state to validate the form
		del form.check
		
		if item is not None and form.validate_on_submit():
			db.session.delete(item)
			db.session.commit()

			return jsonify({"status": "success"})

		return jsonify({"status": "failed", "errors": "Did not delete item."})
	return jsonify({"status": "failed", "errors": "This is not a valid list."})
开发者ID:f-enye,项目名称:Lister,代码行数:25,代码来源:views.py

示例9: editItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def editItem(name):
    """Edit an item for a named item or render a form.

    Args: An item name

    Returns: Edit an item or render a form.
    """
    # Store named item and the logged in user
    item = Item.query.filter_by(name=name).first_or_404()
    user = Users.query.filter_by(
        id=login_session['users_id']).first_or_404()
    # Verify that the logged in user is creator or admin
    if item.users_id != login_session['users_id'] and not user.admin:
        flash(' You are not authorized to make that edit.')
        category = session.query(Category).filter_by(id=item.category_id)
        return redirect(url_for('category.showCategory', name=category.name))
    # Initiate the form.
    form = ItemForm(obj=item)
    # On POST of a valid form, edit the item.
    if form.validate_on_submit():
        item.name = form.name.data
        item.description = form.description.data
        item.picture = form.picture.data
        # Check if there is a amazon url, and if so extract asin
        if form.amazon_url.data is not None:
            asin = re.search("[A-Z0-9]{10}", form.amazon_url.data)
            if asin:
                item.amazon_asin = asin.group(0)
            else:
                item.amazon_asin = form.amazon_asin.data
        db.session.add(item)
        db.session.commit()
        flash(' Item %s Successfully Edited' % item.name)
        category = Category.query.filter_by(id=item.category_id).first_or_404()
        return redirect(url_for('category.showCategory', name=category.name))
    else:
        return render_template('editItem.html', form=form, item=item)
开发者ID:qgreg,项目名称:p5awsitemcatalog,代码行数:39,代码来源:views.py

示例10: editItem

# 需要导入模块: from forms import ItemForm [as 别名]
# 或者: from forms.ItemForm import validate_on_submit [as 别名]
def editItem(category_name, item_title):
    """
    editItem: form to edit a item
    Args:
        category_name (data type: str): category name to filter result
        item_title (data type: str): item name to filter result
    Returns:
        return update a item and redirect to home or show form to edit a item
    """

    if 'username' not in login_session:
        return redirect(url_for('showLogin'))

    try:

        categories = session.query(Categories).order_by('name')

        category = session.query(Categories)\
                          .filter_by(name=category_name).one()

        if category is None:
            flash('Error unable to retrive category')
            return redirect(url_for('showHomepage'))

    except Exception as error:
        output = '<script>function myFunction(){'
        output += 'alert("caught this error-cat: %s");}</script>'
        output += '<body onload="myFunction()">' % (repr(error))
        # return output

        flash('Error cat')
        return redirect(url_for('showHomepage'))

    try:

        item = session.query(Items).filter_by(title=item_title,
                                              category_id=category.id).one()

        if item is None:
            flash('Error unable to retrive item')
            return redirect(url_for('showHomepage'))

        item = session.query(Items).filter_by(id=item.id).one()

    except Exception as error:
        output = '<script>function myFunction(){'
        output += 'alert("caught this error-item: %s");}</script>'
        output += '<body onload="myFunction()">' % (repr(error))
        # return output

        flash('Error item')
        return redirect(url_for('showHomepage'))

    try:

        creator = getUserInfo(item.user_id)

        form = ItemForm(obj=item)

        form.category_id.choices = [(0, 'Select')]
        form.category_id.choices += [(cat.id, cat.name) for
                                     cat in categories]

        print form.errors

        """
        Validate form on submit
        Gather user inputs and update the database
        """
        if form.validate_on_submit():
            form.populate_obj(item)

            item.title = form.title.data
            item.description = form.description.data
            item.category_id = form.category_id.data
            item.user_id = creator.id

            session.add(item)
            session.commit()

            flash("Successfully updated item")
            return redirect(url_for('showHomepage'))

        return render_template('edititem.html',
                               form=form,
                               categories=categories,
                               category=category,
                               creator=creator,
                               login_session=login_session)

    except Exception as error:
        output = '<script>function myFunction(){'
        output += 'alert("caught this error-2: %s");}</script>'
        output += '<body onload="myFunction()">' % (repr(error))
        # return output

        flash('Error 2')
        return redirect(url_for('showHomepage'))
开发者ID:wasay,项目名称:fullstack-nanodegree-vm,代码行数:100,代码来源:views.py


注:本文中的forms.ItemForm.validate_on_submit方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。