Update delete.py to use config
This commit is contained in:
		
							parent
							
								
									13c1344013
								
							
						
					
					
						commit
						ca5a572363
					
				| @ -1,16 +1,28 @@ | |||||||
| from flask import Blueprint, request, render_template, redirect | from flask import Blueprint, request, render_template, redirect, abort | ||||||
| from models import Asset, db | from models import Asset, db | ||||||
|  | from config import item_attributes | ||||||
| 
 | 
 | ||||||
| delete_bp = Blueprint('deleteasset', __name__) | delete_bp = Blueprint('deleteasset', __name__) | ||||||
| 
 | 
 | ||||||
| @delete_bp.route('/delete/<string:assettag>/', methods=['GET', 'POST']) | @delete_bp.route('/delete/<string:primary_value>/', methods=['GET', 'POST']) | ||||||
| def delete(assettag): | def delete(primary_value): | ||||||
|     item = Asset.query.filter_by(assettag=assettag).first() |     # Identify the primary attribute | ||||||
|     if request.method == 'POST': |     primary_attrib = next( | ||||||
|         if item: |         (attrib for attrib, config in item_attributes.items() if config.primary), | ||||||
|             db.session.delete(item) |         None | ||||||
|             db.session.commit() |     ) | ||||||
|             return redirect('/viewall') |  | ||||||
|         abort(404) |  | ||||||
| 
 | 
 | ||||||
|     return render_template('delete.html') |     if not primary_attrib: | ||||||
|  |         return "Primary attribute not defined in configuration." | ||||||
|  | 
 | ||||||
|  |     # Fetch the item using the primary attribute | ||||||
|  |     item = Asset.query.filter_by(**{primary_attrib: primary_value}).first() | ||||||
|  |     if not item: | ||||||
|  |         abort(404)  # Item not found | ||||||
|  | 
 | ||||||
|  |     if request.method == 'POST': | ||||||
|  |         db.session.delete(item) | ||||||
|  |         db.session.commit() | ||||||
|  |         return redirect('/viewall') | ||||||
|  | 
 | ||||||
|  |     return render_template('delete.html', item=item) | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user