32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
from flask import Blueprint, request, render_template, redirect
|
|
from models import Asset, db
|
|
from config import item_attributes
|
|
|
|
addasset_bp = Blueprint('addasset', __name__)
|
|
|
|
@addasset_bp.route('/create/', methods=['GET', 'POST'])
|
|
def create():
|
|
if request.method == 'GET':
|
|
return render_template('create.html', item_attributes=item_attributes)
|
|
|
|
if request.method == 'POST':
|
|
assettag = request.form['assettag']
|
|
hostname = request.form['hostname']
|
|
warrantyfrom = request.form['warrantyfrom']
|
|
status = request.form['status']
|
|
try:
|
|
staffnum = int(request.form['staffnum'])
|
|
except ValueError:
|
|
return render_template('create.html', exc='staffnum')
|
|
|
|
item = Asset(assettag=assettag, hostname=hostname, warrantyfrom=warrantyfrom, status=status, staffnum=staffnum)
|
|
|
|
try:
|
|
db.session.add(item)
|
|
db.session.commit()
|
|
except exc.IntegrityError:
|
|
return render_template('create.html', exc='integrity')
|
|
except exc.StatementError:
|
|
return render_template('create.html', exc='status')
|
|
|
|
return redirect('/viewall') |