小编Joh*_*dis的帖子

如何在CodeIgniter中组织模板结构?

我将为我的最终Web开发课程项目构建一个CMS,并且我的老师在MVC系统中创建了它的挑战,现在,我将使用CodeIgniter.

因此,我想知道如何组织文件/文件夹结构.

我将使用一个简单的模板系统: - 现在我有一个自动加载的templates.php配置文件,并说明所选模板的名称,以及它的绝对路径. - templates文件夹位于views文件夹中(这是最正确的方法吗?) - 现在我有一些问题,通过视图中的文件访问.css文件,从我读过的人通常将所有文件放在应用程序文件夹之外.

你通常怎么做?而且,看到我正在建设什么,你能给我什么建议?视图不应包含模板中的所有内容吗?(包括模板文件夹中的CSS)

谢谢.

(我正在使用Code Ignitor 2.1.0)

编辑:

现在,在构建了所有文件和文件夹之后,我处于两难境地.我在constants.php中添加了以下内容

<!-- language: lang-php -->
$config['selected_template'] = 'oceania';
$config['template_abs_path'] = 'assets/templates/'.$config['selected_template'];

define('IMAGES_PATH', $config['template_abs_path'].'/img/' );
define('CSS_PATH', $config['template_abs_path'].'/css/' );
define('SCRIPTS_PATH', $config['template_abs_path'].'/js/' );
Run Code Online (Sandbox Code Playgroud)

(如果我没有定义selected_template和template_abs_path,我可以在常量中使用它们)

我将它们包含在HTML中,如下所示:

<!-- language: lang-html -->
<link rel="stylesheet" type="text/css" href="<?=CSS_PATH;?>style.css" />
Run Code Online (Sandbox Code Playgroud)

但是现在,我试图获得一个存储在配置中的标题,但我不能这样做,因为我需要所有这些变量都在我之前创建的其他templates.php文件中,否则它将无法识别我的变量.(我有模板自动加载)

templates.php

<!-- language: lang-php -->
<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

$config['title'] = 'Title of the website';
$config['selected_template'] = 'oceania';
$config['template_abs_path'] = 'templates/'.$config['selected_template'];
Run Code Online (Sandbox Code Playgroud)

header.php文件

<div id="logo">
<h1><a href="#"><?=$this->config->item('title');?></a></h1>
</div> …
Run Code Online (Sandbox Code Playgroud)

css php codeigniter

9
推荐指数
1
解决办法
5961
查看次数

更新到最新的 Redux Dev Tools 扩展后,我收到:“Redux 和 Redux DevTools 定义的 Symbol.observable 不匹配。”

对于从 redux dev 工具 chrome 扩展获取最新更新后的一些未知问题,我收到以下警告消息:

Redux 和 Redux DevTools 定义的 Symbol.observable 不匹配。如果未加载 DevTools,这可能会导致您的应用程序表现不同。在导入 Redux 之前考虑对 Symbol.observable 进行polyfill,或者完全避免对 Symbol.observable 进行polyfill。

符号 可观察错误消息

通过阅读错误消息,我了解到 redux 和 redux 开发工具应该使用相同的 Symbol.observable,但事实并非如此。这很奇怪,因为我没有更改代码中的任何内容,并且我按照文档使用代码。

我的问题是你是否知道我应该朝哪个方向走?这是一个我们只需要报告的 Chrome 扩展错误吗?

我正在使用名为Redux DevTools 的最新 chrome 扩展。我注意到,如果我卸载 chrome 开发工具扩展,则不会再出现此警告消息。

我的代码如下所示:

  // The redux-devtools-extension is renamed to this npm package
  import { composeWithDevTools } from "@redux-devtools/extension"; 

  // Some code here ...

  const composeEnhancersPersonalProject = composeWithDevTools({
    name: `My Project`,
  });

  // Some other code here ...
  
  const myStore = createStore(
    persistedReducer, …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-extension redux redux-devtools redux-devtools-extension

8
推荐指数
1
解决办法
7122
查看次数

对于新的 Codeigniter 4 项目,出现错误“CodeIgniter\Cache\Exceptions\CacheException 缓存无法写入...”

几乎总是,当我启动 Codeigniter 4 项目时,我会收到以下错误:

"CodeIgniter\Cache\Exceptions\CacheException Cache unable to write to "/path/to/codeigniter-project/writable/cache/."

SYSTEMPATH/Cache/Handlers/FileHandler.php at line 61

Run Code Online (Sandbox Code Playgroud)

它指向下面一行:

throw CacheException::forUnableToWrite($this->path);
Run Code Online (Sandbox Code Playgroud)

缓存异常

解决这个问题的最佳方法是什么?

php error-handling codeigniter codeigniter-4

3
推荐指数
1
解决办法
1万
查看次数