2017-03-02 32 views
0

私たちのアプリケーションでは、ポイントに基づいてユーザーにタイトルを付けます。したがって、ユーザーが10〜99ポイントを持つ場合、そのユーザーは「初心者」というタイトルを取得できますが、100〜199ポイントのユーザーは「通常ユーザー」のタイトルを取得する可能性があります。私は、属性と関係を使用してユーザーのポイントを読み込むことを熱望しています。これらのポイントを取得すると、属性メソッドを使用してタイトルを割り当てます。スタティックデータをLaravelに保存するにはどうすればよいですか?

しかし、どのように表示されますか?

私はモデル、マイグレーション、シードファイルを作ることができましたが、これらのタイトルはあまり変わらず、決してAPI呼び出しで更新する必要はないと思います。また、ポイントとタイトルの配列をハードコードし、どのタイトルがユーザーに属しているかを調べるためにクイックルックアップを行うこともできますが、そのタイトルをAttributeメソッドでユーザーに何らかの方法で渡す必要があります。あるいは、それらをリポジトリまたはキャッシュに格納することもできます。

モデル内からリポジトリにアクセスできますか?更新や照会の頻度にかかわらず、このようなデータをデータベースに保存する方がよいでしょうか?

答えて

0

.envファイルのエントリを使用してエントリを保存し、PHPのロジックを使用して正しい.envエントリを選択することができます。

LEVEL_1_TITLE=Novice 
LEVEL_2_TITLE=Regular 
... 

if($user->points < 99){ 
    $title = env('LEVEL_1_TITLE'); 
} 
... 

または作成しただけのポイントに基づいて、正しい配列のエントリを選択し、クラスでarrayから同じことを行います。

関連する問題