-4

このチュートリアルを使用しようとしましたhttp://www.ssbits.com/tutorials/2010/dataobjects-as-pages-part-2-using-model-admin-and-url-segments-to-create-a-product-私のニュースセクションのカタログ/ ssbitsから。

私はすべて正しいことをしたと思います。しかし、NewsObject を保存できません。このエラーが表示されます

/mysite/code/DataObjects/NewsObject.php の 155 行目に注意してください。

155号線はこちら

$this->URLSegment = SiteTree::generateURLSegment($this->Title);

しかし、ここで何が問題なのですか?

これが私のコード全体です。おそらく、誰かがこの問題を解決するのを手伝ってくれるでしょう。

NewsObject: http://www.sspaste.com/paste/show/5278c59fd7904

ニュースカテゴリー: http://www.sspaste.com/paste/show/5268d844c9ee2

4

1 に答える 1

1

これは、DataObjects-as-Pagesモジュールがそれを行う方法です。

$this->URLSegment = $this->generateURLSegment($this->Title);

これは、同じクラスでカスタム関数を使用します。

public function generateURLSegment($title)
{
    $filter = URLSegmentFilter::create();
    $t = $filter->filter($title);

    // Fallback to generic page name if path is empty (= no valid, convertable characters)
    if(!$t || $t == '-' || $t == '-1') $t = "page-$this->ID";

    // Hook for extensions
    $this->extend('updateURLSegment', $t, $title);

    return $t;
}
于 2013-10-24T22:34:08.487 に答える