$ этот объект в загруженном шаблоне с угловым - PullRequest
0 голосов
/ 14 декабря 2018

Я пытаюсь реализовать некоторые элементы ACL на моей странице Codigniter + AngularJs.Я использую ng-route, поэтому у меня есть эта строка на моей странице Master-View:

  <div ng-view></div>

Я использую библиотеку ion-auth для помощи в реализации ACL.

Этомой контроллер:

public function __construct()
{
    parent::__construct();
    $this->load->database();
    $this->load->library(['ion_auth', 'form_validation']);
    $this->load->helper(['url', 'language']);
    $this->lang->load('auth');
}

public function index()
{
    if (!$this->ion_auth->logged_in())
    {
        // redirect them to the login page
        redirect('/login', 'refresh');
    }
    else
    $this->load->view('master_view');
}

Вот мой ng-маршрут, использующий:

var app = angular.module("myApp", ["ngRoute","bw.paging"]);
app.config(function($routeProvider) {
    $routeProvider
    .when("/", {
        templateUrl : "/app/templates/cars_list.php",   
    controller: "CarsController"
    })
});

Когда я пытаюсь использовать функцию ion auth в моем master-view, она работает нормально:

<?php if($this->ion_auth->in_group('admin')):?>
<a class="nav-item nav-link" href="index.php#!/list">Users</a>
<?php endif;?>

Но когда я пробую эту строку в загруженном шаблоне (cars_list.php), он ничего не делает.Пожалуйста, помогите мне. Как я могу использовать $ this в моем шаблоне?ТИА!

1 Ответ

0 голосов
/ 14 декабря 2018

Вы не можете использовать $this внутри шаблона, вместо этого вы можете сделать это следующим образом.

public function index()
{
    if (!$this->ion_auth->logged_in())
    {
        // redirect them to the login page
        redirect('/login', 'refresh');
    }
    else{
        $data = [];
        $data["allowed"] = $this->ion_auth->in_group('admin');
        $this->load->view('master_view',$data);
    }
}

В поле зрения

<?php if($allowed):?>
<a class="nav-item nav-link" href="index.php#!/list">Users</a>
<?php endif;?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...