Если я вспоминаю, что это работает что-то вроде этого со свойством:
[XmlArray("Foo")]
[XmlArrayItem("Bar")]
public List FooBars
{ get; set; }
при сериализации этого Вы получили бы что-то как:
, Конечно, я должен, вероятно, подчиниться экспертам. Вот больше информации от MS: http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlarrayitemattribute.aspx
Сообщенный мне, если это удается для Вас.
Я выяснил причину, по которой uid не отображался эхом (отредактируйте 3 части вопроса). Это из-за глупой ошибки, в контроллере был пробел после конечного тега?>. Теперь все работает нормально.
Вам не нужно писать код для создания сеанса, они уже встроены. Затем вы просто используете сеансы чтения и записи, как указано выше. Также см. Здесь для получения дополнительных сведений:
http://book.cakephp.org/2.0/en/core-libraries/components/sessions.html Используется в контроллерах
http://book.cakephp.org/2.0/en/core-libraries/helpers/session.html Используется в представлениях
Пекарня - ваш лучший друг:
http://book.cakephp.org/view/398/Methods
Все операции чтения / записи вашей сессии принадлежат контроллеру:
$this->Session->write('Person.eyeColor', 'Green');
echo $this->Session->read('Person.eyeColor'); // Green
В этом случае это будет:
$this->Flash('User account created','/forms/homepage/'.$this->Session->read('User.UserId'));
, а на ваш второй вопрос отвечает Джейсон Мий ( http://api.cakephp.org/class/session-helper ). Вы можете просто использовать это в своем представлении:
$userId = $session->read('User.UserId');
Медленное и внимательное чтение соответствующих страниц поваренной книги обычно очень помогает ...
Когда у меня странное поведение сессии, и это поможет мне.
Модель:
function clearAllDBCache() {
$db =& ConnectionManager::getDataSource($this->useDbConfig);
$db->_queryCache = array();
}
`