.ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録

.検索

.メインメニュー

.フォーラムメニュー

.オンライン状況
13 人のユーザが現在オンラインです。 (13 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 13

もっと...

.
.リンク集

メイン
   Ajax、Webservice、API
     AjaxHelper::editorで、エラーの場合はどうしていますか?
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
patorash
投稿日時: 2008-8-8 1:35
Baker スタート
登録日: 2008-2-16
居住地: 愛媛県
投稿: 11
AjaxHelper::editorで、エラーの場合はどうしていますか?
CakePHP1.1を使っています。
現在、リンクページ用管理画面を作っていて、リンクのカテゴリー名の変更に
AjaxHelper::editorを使っています。

一応、普通に更新はできています。
しかし、異常系を考えたときに(例えば同一カテゴリー名が既にあるなど)、
エラーメッセージを返すと、そのエラーメッセージが編集したdivタグに入り、
再度そのdivタグ内をクリックすると、editorが動いて
エラーメッセージがインプットエリアに入ってしまいます。。。
対処法がわからず、このままでは使い物になりません。
(editorを使わずにjavascriptで自力で実装するんならできますが)

AjaxHelper::editorを使った際にエラー対処について、
皆様はどのようにされているのか、教えていただけませんでしょうか?

よろしくお願いいたします。
hide99
投稿日時: 2008-8-8 15:30
一人前
登録日: 2007-7-2
居住地:
投稿: 106
Re: AjaxHelper::editorで、エラーの場合はどうしていますか?
ajax使うときは基本的にエラーは出しません。

その場合は ajax を行うコントローラーのアクションにて

<?php
$this
->layout 'ajax';
Configure::write('debug'0);//これがみそ
?>



と記述してやります。
そうすればエラーが返されることはありません。
patorash
投稿日時: 2008-8-8 21:27
Baker スタート
登録日: 2008-2-16
居住地: 愛媛県
投稿: 11
Re: AjaxHelper::editorで、エラーの場合はどうしていますか?
> hide99さん
ご回答ありがとうございます

私の書き方が悪かったのですが、デバッグメッセージやphpのエラーメッセージが表示されるのではありません。

処理の結果、エラーだった場合に、エラーメッセージ(例えば『更新に失敗しました』のような)を返したいのだけれど、それを返すと、editorのdivタグのエリアに『更新に失敗しました』のメッセージが入り、そこをクリックすると、『更新に失敗しました』のメッセージを編集するためのinputエリアが出来てしまうといいたかったのです。わかりにくくてすみません。

当初、CakePHPガイドブックとCakePHPリファレンスブックのみを見ていて、どうしたらいいものかと思っていましたが、色々と調べていると、scriptaculousの問題な気がしてきましたので、そちらを調べてみます。
patorash
投稿日時: 2008-9-9 1:32
Baker スタート
登録日: 2008-2-16
居住地: 愛媛県
投稿: 11
Re: AjaxHelper::editorで、エラーの場合はどうしていますか?
1ヶ月経ってからの回答になりますが、書いておきます。

結論としては、scriptaculousのInPlaceEditorのオプションのonFailureを指定したかったのですが、
CakePHP1.1のAjaxHelper::editorでは、オプションでonFailureが指定できませんでした。
cakeディレクトリ以下を修正したくはなかったので(ajax.phpをappディレクトリ以下にコピーするのも手ですけど、ある意味面倒だったので)、scriptaculousのInPlaceEditorを呼ぶ処理を直接書きました。

これに関して、cakephpでやるならこういう方法があるよとか、
わかる方がいらっしゃいましたら、教えていただけますでしょうか?
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 


. .