2017-10-05 8 views
0

Laravel 5.5
(私のローカルマシン上)(認証のため)最新センチネル
ホームステッド仮想マシン
Laravelアプリケーションがローカルホームステッドではなく、Herokuの上で動作します - センチネルエラー

基本的に、私はそのアプリを持っていますローカルのホームステッドマシンで完璧に動作します。 私はHerokuで新しいアプリケーションを作成しましたが、ログインと登録以外はすべて正常に動作します。私はClearDBデータベースのセットアップを持っています、移行は完全に働くので、データベース接続は良いです。

しかし、ログインしようとするとエラーが発生します。何らかの理由でusernameはデータベースに渡されません。他のすべての値が渡されます。 (私はEloquentUserを変更しましたので、Usernameでログインできます)

私は登録のためにSentinel::registerAndActivate($request->all());コードを使用しています。フォームのすべての名前がdbの名前と一致しています。私が言ったように、それはローカルマシン上で動作します。

私がdd($request->all()になったとき、私はユーザー名が渡されているのを見ることができます。

$fillableアレイにユーザ名を追加しました。SentinelにEloquentUserを追加しました。

どのようなアイデアが動作しないのですか?

答えて

0

愚かなことは正直です。ログインメソッドを変更するときには、vendorフォルダにあるファイルを編集する必要があるため、オリジナルのSentinelユーザモデルを拡張する独自のモデルを作成する必要があります。これは、Herokuに何かをデプロイするたびに上書きされます。

Appフォルダにモデルファイルを作成し、ベンダフォルダからEloquentUserモデルを拡張するだけです。 $fillableおよび$protectedアレイを追加します。 cartalyst.sentinel.phpファイルを設定に変更してください。'model'は今は自分のものであり、EloquentUserではありません。

関連する問題