我想创建一个非常简单的CRUD应用程序,我不确定什么是更新和删除记录的最佳方法。我能够成功列出所有记录并创建新记录。现在我想通过应用程序删除这些记录,但我不知道该怎么做。CRUD App:获取ID来删除和更新记录
比方说,我那里有一个字段名称Person表所示:
Person
name Text
我有一个叫PersonR处理程序列出表中的所有人员,并输入一个成一个新的。为了处理删除和更新,我认为我可以创建一个名为personId
的隐藏字段,然后通过InputForm处理表单,但无法轻松获取ID。我试过unKey personId
,但它仍然有PersistInt64 1
,所以我认为这是不正确的方式去解决它,即使我设法钓鱼编号。
另一种方法我可以采取的就是创建一个新的处理程序(比如ListPersons)刚刚列出的所有人员,然后更改Person
处理程序Person/#personId.
我喜欢尽可能地避免这一点,并保留相关的人的一切行动在一个地方如果可能的话。
如果我正在考虑实施基本CRUD应用程序功能的权利和任何建议,请让我知道吗?
更新:我最终创建了一个将处理GET和POST的PersonPanel
。处理程序负责DELETE和PUT。我最终将4个处理程序放在同一个人处理程序文件中,因此不会四处散布。希望这有助于他人。
谢谢!
谢谢@snak。它看起来像发送删除到人/#personId可能是最好的方式去做。这种方法唯一的问题是,我最终会有2个处理程序在同一个表上工作 - 一个获取(全部)/发布实体,另一个删除并更新它们。对我来说似乎有点不直观。如果没有人有更好的建议,我会接受你的答案。 正如你所说,我可能会避免toPathPiece,因为我不太了解Haskell,可能应该坚持有据可查的方法:) – Ecognium