我有一些只进行更新的代码
<cfif tags NEQ "skip">
<cfquery>
UPDATE myTable
SET tags = <cfqueryparam cfsqltype="CF_SQL_varchar" value="#arguments.tags#">
WHERE ID = <cfqueryparam cfsqltype="CF_SQL_INTEGER" value="#arguments.ID#">
</cfquery>
比使用“跳过”作为魔术值更好的方法是什么?请注意,blank是有效值。
答案 0 :(得分:4)
这取决于数据的来源。理想情况下,我将变量设置为true或false并检查。我猜你的示例标签来自一个表单,'skip'是'没有这些'的值。你可能必须使用某些东西作为一种神奇的价值,但我更喜欢使用__SKIP_TAGS__
之类的东西,这很清楚。
您还可以拆分页面逻辑,以便首先处理表单提交,检查魔术值并设置是否从#tags#插入数据的布尔值,然后使用布尔值进行检查。整体逻辑是相同的,但更好地布局。
您可能需要考虑在问题中添加更多上下文,例如数据的来源,以便其他人可以为您提供更好的建议