这是我在视图中的代码。我想在url中传递id值,但它显示以下错误
严重性:注意
消息:尝试获取非对象的属性
文件名:views / cameralist.php
查看代码
<?php
foreach($field as $f)
if($f !="id"){
{?>
<div class="values"><?php
echo $f."<br>"; ?></div><br><br><br>
<?php
echo "<a href = '".base_url()."index.php/product/edit/".$f->id."'>Edit</a>";
echo "<a href = '".base_url()."index.php/product/delete/".$f->id."'>Delete</a>";
}
}
?>
有什么建议吗?
由于
型号代码
function get_field(){
$result = $this->db->list_fields('camera_details');
foreach($result as $field){
$data[] = $field;
}
return $data;
}
控制器代码
function cameralist(){
$this->load->model('p_model');
$data['field'] = $this->p_model->get_field();
$this->load->view('cameralist',$data);
}
答案 0 :(得分:0)
您的型号代码
<MapView.Polygon
coordinates={polygon} />
查看代码
function get_field(){
$query = $this->db->query("SELECT * FROM camera_details");
return $query->result();
}
更改模型中的代码。这将立即生效
答案 1 :(得分:0)
list_fields()将回显提供的数据库表名的列名。这就是为什么它会返回错误,说你无法获得字符串的偏移量。
因此,请将您的模型代码更改为:
function get_field()
{
return $this->db->field_data('camera_details');
}
此外,您的字段将作为对象返回,因此请坚持使用对象属性语法:
"index.php/product/edit/".$f->id.
将来如果你遇到一个你不知道返回什么的问题,你应该尝试转储这样的结果,例如:
$result = $this->db->list_fields('camera_details');
var_dump(results)
会显示以下内容:
array(5) {
[0]=>
string(2) "id"
[1]=>
string(4) "name"
[2]=>
string(5) "price"
[3]=>
string(10) "lennsensor"
[4]=>
string(5) "thick"
}