gpt4 book ai didi

php - 在 Web 应用程序中处理具有 "has many"关系的数据更新

转载 作者:行者123 更新时间:2023-11-30 23:36:02 25 4
gpt4 key购买 nike

所以我在构建的 Web 应用程序中出现过几次这种情况。我觉得必须有更好的方法来处理这个问题,所以我将详细介绍我目前的技术,希望你们中一些更有经验的开发人员可以提出更好的选择。

本质上,问题围绕着在使用关系数据库存储数据的应用程序中编辑具有多个关系的数据(特别是,我经常使用 MySQL)。

让我们想象一下这个数据库模式(尽管它可以是任何类似的设置):

用户有很多技能技能属于用户

当我创建一个新用户时,我会填写他们的基本信息以及一些(或根本没有)技能。当我点击保存时,我的应用程序将获取此数据并在数据库中保存一个新用户以及零个、一个或多个技能条目。

现在,当我去编辑这个用户时,会显示一个表单,显示用户的基本信息,以及每个技能的多个字段。我可以选择删除技能、添加新技能或两者兼而有之。

目前,我通过使用 Javascript 删除字段来处理这个问题,我也使用 Javascript 添加新的技能字段。我不想在单击“删除”时立即从数据库中删除技能,而是只是删除该字段,然后在用户提交表单后删除该字段。

在我的服务器端代码中,通常我会通过删除该用户所有以前的技能条目来处理这个问题,然后保存所有发布的技能条目。另一种选择是只删除不在 POSTed in 技能条目 ID 中的技能条目,然后更新每个 POSTed in 的记录。

这看起来是处理这个问题的好方法吗?有没有更好的方法来管理这个?我愿意接受任何建议,即使该过程与我现在所做的有很大不同。

为了进一步引用,我在 PHP 和 MySQL 应用程序中执行此操作。

谢谢!

最佳答案

每次获取数据时重写所有技能字段会好得多。所有过程都需要 1 个查询(只需更新查询)。

如果您要删除未发布的技能,则必须进行大量比较。

关于php - 在 Web 应用程序中处理具有 "has many"关系的数据更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7278954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com