CakePHP 2.0 RSS ошибка (не анализирует расширение) - PullRequest
0 голосов
/ 16 сентября 2011

Я перевожу один из моих веб-сайтов с торта 1.3 на 2.0 rc1, и у меня возникла проблема с моим RSS-каналом.

Когда я вызываю свой канал с чем-то вроде mydomain.com/mycontroller/index.rss, у меня появляется ошибка:

Ошибка: действие index.rss не определено в контроллере MycontrollerController

Ошибка: создайте MycontrollerController :: index.rss () в файле: app / Controller / MycontrollerController.php.

<?php
class MycontrollerController extends AppController {
    function index.rss {

    }
}
...
?>

Я ничего не менял, начиная с версии 1.3 (и rss работал), и у меня есть parseExtensions в моих маршрутах. Php:

Router::parseExtensions('rss', 'xml');

Я ничего не нашел об этом в документе и Google: (

Большое спасибо!

1 Ответ

1 голос
/ 03 ноября 2011

Действие в вашем контроллере не должно называться index.rss.

Вы должны проверить несколько вещей:

• Вызывается ли в вашем контроллере и TextHelper, и RequestHandlerComponent?• Вы создали действие индекса со следующим кодом?

if ($this->RequestHandler->isRss() ){
    $posts = $this->YourModel->find('all', array('limit' => 20, 'order' => 'Post.created DESC'));
    return $this->set(compact('posts'));
}

• Убедитесь, что вы создали файл default.ctp в /View/Layouts/rss/

• Сделайте то же самое для представления RSS в /View/YOUR_CONTROLLER/rss/index.ctp

Также см. Ручную запись в документации Cake .

Если это не решит проблему, это может быть связано с перезаписью URL с помощью mod_rewrite.У вас есть другие проблемы с не найденными URL-адресами?

...