2012-01-25 16 views
1

私は、次のヘルパー使用しています:それは与えしかしCakePHPの:致命的なエラー:メンバ関数の画像の呼び出し()

<?php $this->Gravatar->image($profile['User']['email'], array('default'=>'mm','size'=>48)); ?> 

:そうのようなユーザーのためのグラバターを表示するために私のCakePHP 2.0のアプリでhttp://pastebin.com/qBs2GvG4をエラー:

Fatal error: Call to a member function image() on a non-object in /Users/cameron/Sites/social/app/View/Helper/GravatarHelper.php on line 97 

問題は何ですか?これは私の1.3アプリでうまくいきました。この問題の原因となった1.3と2.0の間で何かが変わったのかな?ありがとう

+0

だけの$ this - >を使用すると、メソッドの画像を呼び出している間グラバターまたは$これはnullです。 –

+0

こんにちは、コードがヘルパーから実行されているように、私がエラーを表示しないようにする(エラーはありません)。それがnullであるのを見ないでください... – Cameron

+0

私はそれが1行のコードでどのようにnullになる可能性があるのか​​わかりませんが、PHPはそのメッセージを出力します。 –

答えて

1

ヘルパーは、特に、他のヘルパーが必要な場合には、少し依存性が異なります。CakeDC utils pluginでこれを修正するために実際にコミットしました。

あなたはここでそのヘルパーの更新バージョンを見つけることができます:https://github.com/CakeDC/utils/blob/2.0/View/Helper/GravatarHelper.php

+0

この問題を解決した昨日のヘルパーの最新バージョンを更新しました。何が変わったのか分かりにくいので、問題の内容をもっと分かりやすくすることができますか?ありがとう – Cameron

+0

@Cameron問題は2.0のヘルパーがViewを期待している他のヘルパー)をコンストラクターで渡すことができます。 – Dunhamzzz

0

GravatarHelperがHtmlHelperに依存しているように見えます。 Htmlはコントローラのヘルパーのリストにありますか?

+0

はい私はヘルパーとグローバルAppControllerの両方でこれを持っています – Cameron

+0

これは本当に変です。 $ options); 'つまり、Htmlはオブジェクトではないことを意味します。 GravatarHelperをリンクすると、Htmlヘルパーが正しく組み込まれているため、なぜ初期化されていないのかわかりません。 – jmking

関連する問題