Php 编码点火器HMVC+数据映射器
当我将datamapper与codegniter和HMVC模块一起使用时,我面临一个问题。 MX_控制器不起作用。。c 我采取了以下步骤: 我创建了两个模块 相册(U型):Php 编码点火器HMVC+数据映射器,php,codeigniter,hmvc,codeigniter-datamapper,Php,Codeigniter,Hmvc,Codeigniter Datamapper,当我将datamapper与codegniter和HMVC模块一起使用时,我面临一个问题。 MX_控制器不起作用。。c 我采取了以下步骤: 我创建了两个模块 相册(U型): <?php class albums_model extends DataMapper { var $has_many = array('photos_model'); public $table = 'albums'; } ?> 照片和模型: <?php class photos_m
<?php
class albums_model extends DataMapper {
var $has_many = array('photos_model');
public $table = 'albums';
}
?>
照片和模型:
<?php
class photos_model extends DataMapper {
public $table = 'photos';
public $validation= array(
array(
'field' => 'title',
'label' => 'Title',
'rules'=>array('required')
)
);
?>
照片控制器:
<?php
class Photos extends MX_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('photos_model');
}
function index()
{
$p=new photos_model();
$p= $this->photos_model->get();
print_r($p);
}
}
?>
问题在哪里?有人能帮我吗
顺便问一下,有没有类似于cakephp的$alloy\u to选项?这两行代码是多余的
$p=new photos_model();
$p= $this->photos_model->get();
根据此处给出的示例:
我相信你会想做:
$p->get();
代替第二行 请不要将模式与CodeIgniter的ORM混淆,后者名为Datamapper ORM。它实现模式。此外,请停止将ative记录的实例作为模型引用。模型是一个层,而不是一个类或对象,这也是为什么您所描述的内容与MVC没有任何关系?我上面所说的问题出在哪里?kayladnls它不起作用。。请注意,我使用的是MX_控制器!这些模型存放在哪里?应用程序-控制器型号-此处?查看模块名称-控制器型号-或此处?我想您已经验证了数据库中的数据是否正确?你能通过一个普通的非数据映射器查询来获取数据吗?是的,我能通过一个普通的查询来选择数据。我使用的是HMVC架构。模块|-ztest1 |-controller/c1.php |-model/c1|u model.php |-view/index.php |-ztest2 |-controller/c2.php