如何在 Doctrine 中结合使用 I8n 行为和 sluggable 行为

发布于 2024-09-24 06:57:53 字数 539 浏览 7 评论 0原文

我有一张桌子,上面有文章。该表具有字段 id、标题和文本。

我在标题字段上使用了 sluggable 行为,从而产生了一个唯一的 url

$sluggable0 = new Doctrine_Template_Sluggable(
        array('name'=>'url',
                'fields'=>array(0 => 'title'),
                'unique'=>true,
                'canUpdate'=>true)
);
$this->actAs($sluggable0);

现在我想以多种语言使用该文章。现在使用 I18n 行为对文本进行国际化

   $this->actAs('I18n', array('fields'=>array('text')));

我的问题:如何国际化标题字段,以便在将使用的每种语言中都有唯一的 url?

谢谢!!

i've got a table with articles. The table has the fields id, title and text.

I'm using the sluggable behaviour on the title-field resulting in a unique url

$sluggable0 = new Doctrine_Template_Sluggable(
        array('name'=>'url',
                'fields'=>array(0 => 'title'),
                'unique'=>true,
                'canUpdate'=>true)
);
$this->actAs($sluggable0);

Now I'd like to use the article in multiple languagles. The text is now internationalized using the I18n-behaviour

   $this->actAs('I18n', array('fields'=>array('text')));

My question: how can I internationalize the title field, so that there are unique url's in each language that will be used?

Thanks!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

狂之美人 2024-10-01 06:57:53

这非常简单,您需要将 sluggable 项目作为子项添加到 I18n 行为中。

所以试试这个:

$i18n = new Doctrine_Template_I18n(array('fields' => array('text')));
$i18n->addChild($sluggable0);
$this->actAs($i18n);

It's really simple, you'll need to add the sluggable item as a child to I18n behavior.

So try this:

$i18n = new Doctrine_Template_I18n(array('fields' => array('text')));
$i18n->addChild($sluggable0);
$this->actAs($i18n);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文