いくつかのモデルで Aaron Pollock の sluggable 動作を使用していますが、1 つのモデルでは期待どおりに動作しますが、別のモデルでスラッグを表示しようとすると、notfoundexception がスローされます。
スラッグ可能な動作を使用するすべてのモデルは、同じようにセットアップされます。それらはすべてデータベースに「スラッグ」フィールドがあり、モデルは次のように設定されています。
var $actsAs = array(
'Sluggable' => array(
'slug_field' => 'slug',
'slug_max_length' => 100,
'separator' => '-'
),
ビュー アクションは次のように設定されます。
public function view($slug=null) {
$this->layout='default';
$eventdetails = $this->Eventdetail->findBySlug($slug);
if (!$this->Eventdetail->exists()) {
throw new NotFoundException(__('missing eventdetail'));
}
$this->set('eventdetails', $eventdetails);
}
index アクションは次のようになります。
public function index() {
$this->Eventdetail->recursive = 0;
$Eventdetail = $this->Eventdetail->find('all');
debug($this->$Eventdetail);
$this->set('eventdetails', $Eventdetail, $this->paginate());
}
$Eventdetail をデバッグしようとすると、次のエラーが発生します。
注意(8): 配列から文字列への変換[APP\Controller\EventdetailsController.php、86行目]、デバッグがオンになっている行です。
Sluggable があるモデルではどのように機能し、別のモデルでは機能しないのかわかりません。
私はこれについていくつかのサークルに参加しましたが、際立ったアイデアはありますか?
乾杯、ポール