2

私はLaravel 4.xフォーラムでこれを尋ね、Googleで答えを見つけようとしましたが、うまくいきませんでした。

私は Eloquent を使用して、created_atプロパティを持つ一連のユーザー オブジェクトをロードしています。デフォルトの MySQL タイムスタンプはあまり読みにくいので、readableDate()代わりに「1 分前」、「2 日前」として値を出力するメソッドを User モデルに追加するとよいと思いました。

ブレード テンプレートで次のようにメソッドを呼び出すと$user->readableDate()、目的の出力が得られますが、レイアウト全体が壊れています。

テンプレート内からモデルメソッドを呼び出すことは可能ですか?

4

4 に答える 4

2

はい、ブレードは PHP にコンパイルされます。:)

あなたはただしなければなりません:

ユーザーをビューに渡します。

 return View::make('showUser')->with('user', $user);

そしてそれを使用します:

<hml><body>

    Last update: {{ $user->readableDate() }}

</body></hml>
于 2013-05-31T08:13:32.323 に答える
0

ブレードタグ {{ code here }} 内にラップしていると思いますか、それともその部分を見逃していましたか?

また、モデルは次のような静的アプローチを使用して呼び出す必要があります。

{{ User::readableDate() }}
于 2013-05-31T08:11:29.697 に答える
0

わかりました、私はこれを理解しました。私がやろうとしていたことは可能ですが、見えないエラーをスローしていました。ページのソースを表示すると、通常の laravel エラー HTML が出力の下にありました。このエラーは、created_at フィールドのデフォルト値によってスローされていました。

于 2013-05-31T09:34:29.337 に答える