1

Yii フレームワークは初めてです。実は先週、膝の上に投げ捨てられました。メールの確認で、投稿の「数」を印刷する必要があります。たとえば、3 つの投稿。

投稿を数えて確認書に印刷する方法がわからない問題。フォームの代わりにコントローラーに db クエリを追加しますか? そして、以下のように投稿数を出力しますか? -

<?php echo $posts->count($posts); 

フレームワークの使用に少し混乱しています。少しプッシュが必要です。
前もって感謝します。

4

1 に答える 1

2

yii を使用してからかなり時間が経っているので、少しさびています。

CActiveRecord$postから拡張され、CActiveRecord で使用されて いるカウント関数には sql 条件が必要です (ここに記載)。

次に想定するのは、このすべてのビジネス ロジックをコントローラではなくビューで準備していることです。電子メールの確認メッセージのために、ビューからデコレーターに送信することを検討してください。

これはテストされていませんが、以下では投稿のすべての pk を比較する必要があります。

echo $posts->count('fieldDate < now() AND fieldDate >' . strtotime('yesterday'));

より良く、より簡単になるかもしれません:

echo $posts->countByAttributes(array('postID'));

著者によるすべての投稿をカウントする場合 (これもテストされていません):

$numberOfPosts = count(PostModel::model()->findAll("author_id=$authorId"));

count($posts);ビュー内の前のコントローラーでクエリされたポスト オブジェクトの配列を受け取っている場合。

ファットモデル、薄型コントローラー。

于 2015-02-08T20:09:38.227 に答える