私はsymfony 1.4(Propelの)とsfGuardプラグインをインストールしようとしています。 私はそれをどのようにインストールすることができ、うまくいきました(登録、ログイン、ログアウトができました)。symfonyのコマンドでsfGuardPluginエラー着信/コマンドでsfGuardPlugin/libに/ユーザー/ sfGuardSecurityUser.class.php
しかし、私は再び私のキャッシュをクリアしたら、私がログインすることはできませんよ、私はこのエラーを取得:
PHP Fatal error: Call to a member function getId() on a non-object in plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php on line 81, referer: http://localhost/index.php/login
私は私が間違って何をしたかわからないけど、何とか私はそれが再び仕事を得る傾けます。私はプラグインをアンインストールして再インストールしようとしました。同じエラーです。
私は、ドキュメントごとに、私ののapp.yml、settings.ymlファイル、のrouting.ymlを変更しました。またapps/myapp/lib/myUser.class.php
をsfGuardSecurityUserに変更しました。
フォーム提出は、ファイルplugins/sfGuardPlugin/modules/sfGuardAuth/lib/BasesfGuardAuthActions.class.php
を入力し、$this->getUser()->signIn($values['user'],...)
ファンクションコールでform->isValid
の後に失敗します。
$values['user']
がフォームから正しい値を持つことを確認しました。 signIn関数は、$this->setAttribute('user_id', $user->getId(), 'sfGuardSecurityUser');
を呼び出し、そのオブジェクトは$user
をオブジェクトとして取得できません。それでもフォームに渡された「ユーザー名」はそのままです。
何か助けていただければ幸いです。 ありがとう!
いいえ、私は自分のフォームを作成していない、私はプラグインに付属のsfGuardFormSigninを使用しています。私が参照していたコード(失敗した場所)、$ values ['user']もプラグインの一部ですが、私はそれを変更しませんでした。 –
ここに私が参照しているプラグインコードがあります:http://trac.symfony-project.org/browser/plugins/sfGuardPlugin/branches/1.3/modules/sfGuardAuth/lib/BasesfGuardAuthActions.class.php line 45 –