2016-05-31 4 views
1

私は、Userモデルにいくつかの写真があり、photo1photo2という名前のアプリを作成しています。実際の写真ファイルはAmazon S3に保存され、相対パスはデータベースに保存されます(例:10206074968017993/photo1.jpg)。Laravel 5.2:属性名に数字を使用する

public function getPhoto1Attribute() 
{ 
    return 'https://s3-'.env('AMAZON_REGION').'.amazonaws.com/'.env('AMAZON_BUCKET').'/'. $this->photo1; 
} 

これは単に写真の完全なURLを返す必要があります、のようなものでなければなりません:

https://s3-us-west-2.amazonaws.com/mybucket/10206074968017993/photo1.jpg

しかしを、私は写真のURLを取得するために、Userモデルでアクセサを持っていますその代わりに、私はそれが原因となっているphoto11だと思う

Undefined property: App\\Models\\User::$photo1 

というエラーを投げていますこのエラーは、フィールドの名前をphotoに変更するとコードが大きく機能するためです。しかし、実際のアプリは私がここで説明しているより複雑なので、フィールドの名前を変更することは選択肢ではありません。私は何ができますか?

+0

dd($ this)はいつ表示されますか? – Sangar82

答えて

0

私は変数名に整数を使用しないように決めました。できるようにする方法があるかもしれませんが、私はすべてをできるだけ標準化されたものにしておきたいと思います。整数を変数名で単純に避けるのがベストだと思います。

関連する問題