【发布时间】:2021-07-27 06:20:11
【问题描述】:
上下文
我创建了一个处理待办事项的应用程序。我希望能够根据从 url 获得的 id 删除待办事项
import vweb
struct App {
vweb.Context
}
[post]
["/todo/:id/delete"]
pub fn (mut app App) delete_todo_response(id string) vweb.Result {
db := sqlite.open("dist/database.db") or {
return app.redirect("/todo")
}
db.exec_none('DELETE FROM todo WHERE id = $id') // id is not escaped
}
fn main() {
vweb.run<App>(80)
}
问题
如您所见,id 没有转义。我觉得这不是执行此操作的理想且安全的方式。
问题
- 如何使用
exec()、exec_one()或exec_none()转义值? - ORM 是否能够基于结构为我删除记录,就像使用 select 和 insert 一样?
【问题讨论】: