這可能是一個簡單的問題,我有一個表單,您可以在提交時將它重定向到另一個頁面,並將所有註釋顯示在列表中。我想知道如何將刪除按鈕添加到每個列表項目以刪除該特定評論。從數據庫中刪除列表項
謝謝你在前進,
db.define_table('discussion',
Field('comment', 'text'))
def comment():
form = SQLFORM(db.discussion, _class='test1')
if form.process().accepted:
redirect(URL('comment_results'))
return dict(form=form)
def comment_results():
items = db(db.discussion.id==db.discussion.id).select()
???? erase = db(db.discussion.id==).delete() ????
### trying to create an erase button to delete the currently displayed comment ###
return dict(items=items, erase=erase)
view:
<html>
<head>
<link rel="stylesheet" href="{{=URL('static','css/test.css')}}">
</head>
<body>
{{for item in items:}}
<li>{{=item.id}} Comment = {{=item.comment}}<button id="{{=erase}}">erase</button></li>
{{pass}}
</body>
</html>
*答案* 查看:
<html>
<head>
<link rel="stylesheet" href="{{=URL('static','css/test.css')}}">
</head>
<body>
{{for item in items:}}
{{=item.comment}}<a href="{{=URL('delete', args=item.id)}}"> Delete</a>
{{pass}}
</body>
</html>
*我剛剛通過參數傳遞給刪除方法在控制器* 控制器:
def delete():
query = db(db.discussion.id==request.args(0)).select().first() ## grabbing comment to be deleted from comment_results
remove = db(db.discussion.id==query).delete()
if remove:
redirect(URL('comment_results'))
return dict(remove=remove)
對不起,我沒有具體說明我使用的是web2py。事實證明,我所需要做的就是鏈接到我的控制器中的一個不同的刪除方法。我將編輯問題以顯示我所做的。 –