2012-01-07 1 views
1

Как заменить/сообщение/вид/id с/posts/view/код?Заменить ID от CakePHP URL

код - это поле в базе данных, содержащее 10 случайных чисел, сгенерированных с использованием функции mt_rand().

В PostsController У меня есть эта функция для просмотра сообщений:

public function view($id = null) { 
    $this->Post->id = $id; 
    $this->set('post', $this->Post->read()); 
} 

Теперь я хочу использовать код вместо идентификатор.

Благодарим за ответы!

UPDATE :::

Кто-то из CakePHP Q & А решить мою проблему.

Я буду вводить коды здесь, так что если кому-то нужно такое же решение, его можно найти здесь.

в вашем routes.php добавить этот код:

Router::connect('/posts/view/:code', array('controller' => 'news', 'action' => 'view'), array('pass' => array('code'))); 

в контроллере изменить способ просмотра, как это:

public function view($code = null) { 
    $this->set('post', $this->Post->findByCode($code)); 
} 

Спасибо так много!

+0

Зачем вам вообще нужно касаться маршрутизации? Либо ваш вопрос сформулирован очень странно, либо использование маршрутов является излишним. – Dave

ответ

1

я использовал CakePHP

всего несколько раз, но я думаю, что вы должны увидеть маршрутизации в CakePHP, вы должны изменить переписывание URL

0

Я думаю, что это был бы URL-адрес, такой как/posts/view/id/code. Затем с помощью ID, вы хватаете кода из базы данных:

public function view($id = null, $code = null) { 
    $this->Post->id = $id; 
    //..DO CAKEPHP QUERY TO GET CODE USING ID HERE. ASSIGN TO $code. 
    $this->Post->code = $code; 
    $this->set('post', $this->Post->read()); 
} 
+0

no, from/posts/view/id to/posts/view/code. , заменяя идентификационную часть URL кодом –

 Смежные вопросы

  • Нет связанных вопросов^_^