【问题标题】:How to Include/Use Composer Bootstrap in CodeIgniter?如何在 CodeIgniter 中包含/使用 Composer Bootstrap?
【发布时间】:2018-03-27 07:51:40
【问题描述】:

我想在我的所有控制器/视图中包含/使用引导程序,而不必在每个视图文件中加载每个 css/js,所以我这样做了:

已安装 Composer 引导程序

composer require twbs/bootstrap

我的索引控制器:

public function index() {
    // Composer Autoloader
    require VENDORPATH.'autoload.php';
    require_once BASEPATH.'core/CodeIgniter.php';

    echo '<div class="section jumbotron text-center">Yu in index son.</div>';
}

VENDORPATH = myhomefolder../vendor/

供应商/autoload.php

// autoload.php @generated by Composer

require_once __DIR__ . '/composer' . '/autoload_real.php';

return ComposerAutoloaderInit9d54f40b1177ed0ebd8d1d378ec06d06::getLoader();

/composer.json

{
  "require": {
    "twbs/bootstrap": "^3.3"
  }
}

我现在不知道该怎么做,我已经搜索了所有网络,但它只说有关其他软件包或不相关的内容,我现在陷入困境,如果有人提前可以提供帮助,我将不胜感激,谢谢。

【问题讨论】:

    标签: php css twitter-bootstrap codeigniter


    【解决方案1】:

    第一

    创建由引导 css 和 js 组成的页眉和页脚 并将它们放入您的视图文件夹中的模板文件夹中

    在控制器中对每个方法都像这样使用它们:

    public function index() {
    
      $data['title'] = 'home';
      $this->load->view('templates/bootstrap_header',$data);
      $this->load->view('index',$data);
      $this->load->view('templates/bootstrap_footer');
    }
    

    【讨论】:

    • 难道没有办法在自动加载中获取所有 CSS/JS,例如在每个控制器中预加载 css/js,而不是使用页眉/页脚加载视图?
    • 不,你不能自动加载css和js库,帮助数据库可以自动加载
    • 这是目前所知的最简单的方法。使用base_url或site_url包含css和js
    • 好的,谢谢你的帮助,我会把你的答案标记为正确的。
    【解决方案2】:

    我所做的是使用“主”模板,其中包括 css、js、head、body 等......然后,在我的 body 标签内,我执行 $this->load->view ('文件夹/函数', $data);哪个处理内部视图...我有意义吗???

    主视图:

    <html>
    <head>
        <?php $this->load->view('html/head', $view_data); ?>
            </head>
            <body lang="es">
    
                <div class="container">
    
                    <?php $this->load->view('html/header')?> 
            
                    <div class="contenido">
    
                        <?php if (isset($which_view))  $this->load->view($which_view, $view_data)?>
    
                    </div>
                    <?php $this->load->view('html/footer');?>
                </div>
        	</body>
        </html>

    最后,我在一个以我的控制器命名的文件夹中创建了一个小的“内部视图”,以我的函数命名,所以一切都保持同步......

    <div class="formatoLogin modulo">
    	
    	<?php echo form_open('login/doLogin', array('id'=>'formLogin', 'class'=>'form-signin'))?>
    
    		<?php $this->load->view('mod/notificacion')?>   
    		<h1>Acceso Restringido</h1>
    		<div class="form-group">
    			<label for="Usuario" class="control-label">Usuario:</label>
    			<input type="text" name="Usuario" id="Usuario" class="form-control" />
    		</div>
    		<div class="form-group">
    			<label for="Contrasenia" class="control-label">Contraseña:</label>
    			<input type="password" name="Contrasenia" id="Contrasenia"  class="form-control">
    		</div>
    		<div class="form-group text-center">
    			<button class="btn btn-info">Acceder</button>
    		</div>
    		<?php if($this->uri->segment(3)=='redirect'){?>
    		<input type="hidden" name="redirect" value="<?php echo $this->uri->segment(4).'/' . $this->uri->segment(5).'/' . $this->uri->segment(6) ?>">
    		<?php } ?>
    	<?php echo form_close()?>
    </div>

    我说得有道理吗?我希望它有效,因为它为我节省了大量的包含...

    【讨论】:

      猜你喜欢
      • 2022-01-27
      • 2014-07-29
      • 2019-07-11
      • 1970-01-01
      • 2013-06-28
      • 1970-01-01
      • 2012-12-27
      • 2019-11-18
      • 2023-03-11
      相关资源
      最近更新 更多