gpt4 book ai didi

codeigniter - RedBean ORM 和 Codeigniter,如何让 Fuse 识别从 CI 默认模型路径加载的模型?

转载 作者:行者123 更新时间:2023-12-03 12:24:52 25 4
gpt4 key购买 nike

Codeigniter 有自己的模型路径,模型从 CI_Model 扩展而来。我正在使用 RedBean 在 Codeigniter 中有一个库,将它加载到 Controller 上。加载 Rb 后,我尝试使用 CI Loader 加载扩展 redbean_simplemodel 的模型(希望有效,没有错误),但是模型中的事件/方法在 bean 上调用时没有任何影响。

例如,
APPPATH/应用程序/库/rb.php

class Rb {

function __construct()
{
// Include database configuration
include(APPPATH.'/config/database.php');

// Get Redbean
include(APPPATH.'/third_party/rb/rb.php');

// Database data
$host = $db[$active_group]['hostname'];
$user = $db[$active_group]['username'];
$pass = $db[$active_group]['password'];
$db = $db[$active_group]['database'];

// Setup DB connection
R::setup("mysql:host=$host;dbname=$db", $user, $pass);

} //end __contruct()


} //end Rb

然后继续
APPPATH/application/models/model_song.php
class Model_song extends RedBean_SimpleModel {

public function store() {
if ( $this->title != 'test' ) {
throw new Exception("Illegal title, not equal «test»!");
}
}

}

开机时
APPPATH/应用程序/ Controller /welcome.php
class Welcome extends CI_Controller {

public function index()
{
$this->load->library('rb');
$this->load->model('model_song');

$song = R::dispense('song');
$song->title = 'bluuuh';
$song->track = 4;
$id = R::store($song);
echo $id;

}
}

我的问题是,如何让 RedBean (FUSE http://redbeanphp.com/#/Fuse) 在 Codeigniter 上工作?

感谢您的关注!

----- 找到解决方案!

事实上,它正在工作!我试图将代码放在我的模型方法 store() 下。那行不通!我尝试放置一个名为 update() 的新方法,它确实有效!检查下面的例子:
class Model_song extends RedBean_SimpleModel {

public function update() {
if ( $this->title != 'test' ) {
throw new Exception("Illegal title!");
}
}

}

解决方法如下:

“假设您已经在 Codeigniter 上安装了 RedBean”

1) 加载 «redbean» 的库
2)使用ci_loader,加载需要的模型(模型必须继承redbean_simplemodel)

感谢您的关注!我希望这也能帮助其他人。

最佳答案

解决方法如下:

“假设您已经在 Codeigniter 上安装了 RedBean”

  • 加载 «redbean» 的库
  • 使用ci_loader,加载想要的模型(模型必须扩展redbean_simplemodel)
  • 关于codeigniter - RedBean ORM 和 Codeigniter,如何让 Fuse 识别从 CI 默认模型路径加载的模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6457774/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com