2015-09-04 2 views
1

Я прочитал документацию cakephp, но там приведен пример, как написать сеанс vairable в контроллере, как показано ниже.Как я могу написать переменную сеанса в виде cakephp 2?

$this->Session->write('Name', 'Value'); 

В ситуации мне нужно написать переменную сеанса в поле зрения. Как я могу это достичь.

+1

Не могли бы вы поделиться тем, что проблема, которую вы пытаетесь исправить путем записи данных сеанса с точки зрения? Возможно, есть лучшее решение. –

+0

Лучше всего у вас есть мнения ... Представление вида. Сделайте свою логику в моделях или контроллерах. Нет необходимости делать операции CRUD во взглядах –

ответ

0

Вы не можете писать на Сессию во взглядах, только читать. Все записи сеанса выполняются в контроллере.

Но если вам действительно нужно, и я настоятельно не рекомендую это делать, напишите на сеанс в представлении, вы можете использовать AJAX для вызова метода, который пишет все, что вам нужно, в сеанс.

+2

AJAX? Если вы собираетесь нарушить шаблон MVC, вы, вероятно, можете просто написать в '$ _SESSION'. –

+0

Вот почему я добавил «если ему действительно нужно». Я бы не рекомендовал его. – IWillScoop

+0

Чтобы быть понятным - работа с сеансами выполняется через Session 'component', а компонент может использоваться в контроллерах и/или других компонентах, а не только контроллере, как вы упомянули. – Artegon

2

Вопрос старый, но ответ может помочь кому-то. Чтобы написать СЕССИЯ в поле зрения, используйте.

<?php SessionComponent::write('Name', 'Value'); ?> 

И читать его использовать

$this->Session->read('Name'); 
Смежные вопросы