我只是很好奇,想知道你们如何处理它,如果你想使用相同的html表单,并尽可能使用相同的PHP代码来创建和更新项目.
示例:
在一个页面上,您可以创建一个包含名称,电子邮件地址和年龄的数据库条目.
在另一个(?)页面上,您会看到填充了数据的表单字段,您可以编辑并保存它.
我有很多方法可以使用相同的代码完成此任务 - 但我希望在这里学到一些东西.那你将如何处理这项任务呢?
谢谢和干杯,扭伤
很容易 - 如果在查询字符串中提供了现有项目的ID(用户被授权编辑),那么它就是编辑操作.
如果查询字符串中未提供ID,则为创建操作.
如果字段是编辑操作,则根据数据库中的现有值预先填充字段,如果是创建操作,则根据默认值或空字符串预填充字段.
我的看法是在创建/编辑之间重用相同的表单标记适用于某些情况,但不适用于所有情况。我发现表单——尽管它们可能映射到同一个数据库表——实际上是由它们的上下文定义的。例如,如果您有一个“用户”表,您可能有一个包含用户名、电子邮件、密码的“创建”表单,但是在该用户存在后,您希望他们在其站点上保留其身份,因此不会出现用户名字段在“编辑”上下文中。我是一名典型的 PHP 开发人员,但我开始欣赏 Django 所采用的方法,您可以在其中创建一个模型(表)来定义每个字段的基本验证,并且您可以创建尽可能多的表单,或修改/扩展该定义。如果你从头开始写作,你