私はci/焚き火アプリケーションを持っています。クエリの結果をループしようとしています。ただし、レコードとその個々のフィールドをループする私のビューのロジックは、非オブジェクトのプロパティを取得しようとしているというメッセージで失敗します。私のモデルでは、返すものがある場合にのみデータを返すようにしています...次のように:
if ($query->num_rows() > 0)
{
return $query->result_array(); //returns an object of data
}
ビューでは、データを取得していることを証明するために、次のデバッグステートメントも追加しました。
print_r($records);
それは私に次の出力を与えます:(私は簡潔にするためにサブセットだけを含めました..)
Array ( [0] => Array ( [category_id] => 59 [name] => procs [description] => [parent_id] => 4 [deleted] => 0 [created_on] => 2012-09-28 00:00:00 [modified_on] => 0000-00-00 00:00:00 ) [1] => Array ( [category_id] => 62 [name] => test [description] => [parent_id] => 4 [deleted] => 0 [created_on] => 2012-09-28 00:00:00 [modified_on] => 0000-00-00 00:00:00 )
そして最後に、$ recordsをループするために使用するロジック(ここでもサブセットのみ)を次に示します。
<?php foreach ($records as $record) : ?>
<tr>
<td><input type="checkbox" name="checked[]" value="<?php echo $record->category_id ?>" /></td>
それはへの呼び出しで死にかけている$record->category_id
編集1
同じテーブルからすべてのレコードを返すためにbonfireが作成した私のコントローラーのindex()メソッドは$record->category_id
、ビューの構文を正常に使用します。私は使用できることを知っています$record['category_id']
が、なぜそれを他の方法で動作させることができないのか疑問に思っています。
任意の提案をいただければ幸いです。ありがとう。