ユーザーがアクションを参照することによるエラーを回避するにpost
は、検証を参照してください:
http://cfwheels.org/docs/chapter/verification
したがって、create
アクションはコントローラーの次update
のように構成されます。init
<cffunction name="init">
<cfset verifies(only="create,update", post=true, params="comment", paramsTypes="struct")>
</cffunction>
フォームが送信された後、ユーザーを前のページにリダイレクトすることは不合理ではありません。redirectTo(back=true)
あなたの成功のアクションを
見てください。http://cfwheels.org/docs/1-1/function/redirectto
<cffunction name="init">
<cfscript>
verifies(only="create,update", params="comment", paramsTypes="struct");
provides("html,json");
</cfscript>
</cffunction>
<cffunction name="create">
<cfscript>
comment = model("comment").new(params.comment);
comment.save();
if (isAjax())
{
renderWith(comment);
}
else
{
if (comment.hasErrors())
redirectTo(back=true, error="There was an error saving the comment.");
else
redirectTo(back=true, success="The comment was posted successfully.");
}
</cfscript>
</cffunction>
はい、AJAX は優れたソリューションであるという Craig の回答が気に入っていますが、AJAX が失敗し、フォームが非 AJAX リクエストを介して最終的に URL に投稿された場合にどうなるかを考慮する必要もあります。完全にアクセス可能なエクスペリエンスを提供するのが最善です。