如果我有10个图像,2个javascript文件和4个css文件需要包含在Ci视图中...如何调用所有文件的最佳方法?我尝试使用$ this-> load-> view('image1.png')和$ this-> load-> view('style.css')调用所有外部文件。但它似乎没有正常工作。关于如何更好地解决这个问题的任何想法?
答案 0 :(得分:4)
你没有正确使用view方法。 您通常会分配一个视图并将诸如js和css之类的内容传递给模板。这取决于您使用框架的方式。
$这 - >负载>查看( '路径到视图');将在视图文件夹中查找视图,而不是任意文件。
您可能会对此进行调查: http://codeigniter.com/user_guide/helpers/html_helper.html#img
用于加载图像,但我个人认为为图像这样的基本html元素调用框架的方法毫无意义。
有些情况下你会使用多个视图,比如将视图作为字符串返回 - 循环等可能需要这些视图 - 但这看起来不像你的问题。 以防万一这里是视图文档:
http://codeigniter.com/user_guide/general/views.html
进一步详细说明,一般的想法是使用CI控制器处理页面的数据,将必要的模板数据传递给模板(如特定于此页面的js和css),然后将必要的数据分配给查看并将该视图传递给模板。您可能想知道模板的含义,因为如果您只是按顺序调用它们,则开箱即用CI会逐步加载视图。
在您的控制器中,您可以向视图传递一个标题信息数组:$data['css'] = array('some-path.css','another-path.css');
$this->load->view('your-view', $data);
所以在你的视图中处理标题你可能会这样称呼:
<head>
<?php foreach($css AS $c): ?>
<link rel="stylesheet" type="text/css" href="<?php echo $c; ?>">
<?php endforeach; ?>
</head>
以下是CI模板的公平链接:
How to Deal With Codeigniter Templates?
这是一个多功能的框架,有许多使用它的选项,但你最舒服。