1
我正在使用codeigniter,並且我有一個包含大量頁面的項目。 每個頁面由控制器+視圖組成。 也許有一種方法可以基於模板自動創建頁面和控制器?也許codeigniter有一個批處理文件選項,用於檢測數據庫中特定表(例如頁表)中的更改,並相應地創建控制器+查看文件?在CodeIgniter中自動創建視圖和控制器
由於
我正在使用codeigniter,並且我有一個包含大量頁面的項目。 每個頁面由控制器+視圖組成。 也許有一種方法可以基於模板自動創建頁面和控制器?也許codeigniter有一個批處理文件選項,用於檢測數據庫中特定表(例如頁表)中的更改,並相應地創建控制器+查看文件?在CodeIgniter中自動創建視圖和控制器
由於
找到一種方式來創建一個「批處理」文件來創建模型/視圖/控制器
享受。
我使用Codeigniter的幫手來做到這一點。
從另一個控制器加載幫手
$this->load->helper('pages_creator');
create_new_page('test', 'Test', 'Test');
這裏是助手pages_creator_helper.php
<?php
function create_new_page($page_name, $class_name, $controller_name){
// Create Controller
$controller = fopen(APPPATH.'controllers/'.$controller_name.'.php', "a")
or die("Unable to open file!");
$controller_content ="<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class $class_name extends MY_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
\$this->data['site_title'] = '$page_name';
\$this->twig->display('$page_name',\$this->data);
}
}";
fwrite($controller, "\n". $controller_content);
fclose($controller);
// Create Model
$model = fopen(APPPATH.'models/'.$class_name.'_model'.'.php', "a")
or die("Unable to open file!");
$model_content ="<?php if (! defined('BASEPATH')) exit('No direct script
access allowed');
class ".$class_name."_model"." extends CI_Model
{
function __construct()
{
// Call the Model constructor
parent::__construct();
}
}
";
fwrite($model, "\n". $model_content);
fclose($model);
// Create Twig Page
$page = fopen(APPPATH.'views/'.$page_name.'.twig', "a") or die("Unable to
open file!");
$page_content ='{% extends "base.twig" %}
{% block content %}
<div class="row">
<div class="col-md-12">
<h1>TO DO {{ site_title }}</h1>
</div>
<!-- /.col -->
</div>
{% endblock %}';
fwrite($page, "\n". $page_content);
fclose($page);
}
生成與此http://crudigniter.com/ – kishor10d
嘗試使用HMVC –
謝謝! !這不是我正在尋找的 - 但我可以看到潛在的 – RoyBarOn