Я работаю над приложением по управлению активами, используя базу данных колб и граф neo4j. где я хочу развивать функциональность CRUD. Где я сделал половину функциональности, это создать и прочитать. Сейчас я работаю над удалением и обновлением.
Все это использует фреймворк AJAX и Python.
Теперь моя проблема заключается в удалении любого элемента, который не вызывает мой ajax-скрипт.
вот что я сделал до сих пор,
@app.route('/assets', methods = ['POST','GET'])
@login_required
def assets():
labelList_5 = neo4j_model.get_all_label()
return render_template("assets.html", nodeList = {}, labels = labelList_5)
@app.route('/tags', methods = ['POST', 'GET'])
@login_required
def tags():
labelList_7 = neo4j_model.get_all_label()
return render_template("tags.html", nodeList = {}, labels = labelList_7)
@app.route('/deleteNode/', methods = ['POST', 'GET'])
def deleteNode(assetName):
neo4j_model.deleteNode(labelType, assetName)
return redirect(url_for('assets'))
@app.route('/editNode', methods = ['POST', 'GET'])
def editNode():
# nodata = neo4j_model.getNodedetails(assetsType)
rcd = request.form
r = [x for x in rcd]
return "Ok"
Вот так выглядит мой скрипт
<script type="text/javascript">
var asstName = "";
$('select#label_Name').change(function(){
asstName = $('#label_Name').val();
console.log(asstName);
$.ajax({
url: '/get_asset',
data: asstName,
type: 'POST',
dataType: 'json',
}).done(function(data){
// console.log(data);
var print = "";
for (i=0; i < data['nodeList'].length; i++){
print += "<tr>" +
"<td>" + data['nodeList'][i]['Asset_Name'] + "</td>" +
"<td>" + data['nodeList'][i]['Asset_Manufacturer'] + "</td>" +
"<td><button id=" + data['nodeList'][i]['Asset_Name'] + ">" +
"<i style='color: red;' class='fa fa-trash'></i></button>" +
" " +
"<button id=" + data['nodeList'][i]['Asset_Name'] + ">" +
"<i style='color: blue;' class='fa fa-pencil'></i></button>" +
"</td>" +
"</tr>";
}
$('tbody#tBody').html(print);
})
});
$('button').click(function(){
var delName = $(this).attr('id');
// console.log(asstName);
$.ajax({
url: '/deleteNode',
data: JSON.stringify(delName),
dataType: 'json',
type: 'POST'
}).done(function(data){
console.log(data);
})
});
</script>
И HTML
<div class="panel-body">
<div class="table-responsive">
<table class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>Asset Name</th>
<th>Asset Manufacturer</th>
<th>Action</th>
</tr>
</thead>
<tbody id="tBody">
</tbody>
</table>
</div>
<!-- /.table-responsive -->
</div>
Я не мог найти, в чем проблема. Пожалуйста, дайте какое-либо решение по этому вопросу.