- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用“knp Doctrine Translatable”来翻译实体。到目前为止效果很好。
现在我想有一个通用的解决方案,适用于任何数量的语言。所以我想使用一个嵌入式表单(集合)来处理实体的可翻译。
现在一切都在正常工作,除了添加新翻译的 translatable_id 没有被设置。有人也尝试过实现这一目标吗?
我只是想知道是否有更简单的方法来做到这一点,以避免使事情过于复杂。
到目前为止,很好,这是我的类型,以便您可以更好地理解架构。
// Main type that has a linkTranslationType with the translations
class linkType extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name', 'text', array(
'label' => 'Name'
))
->add('translations', 'collection', array(
'type' => new linkTranslationType(),
'label' => false,
'allow_add' => true,
'allow_delete' => true
));
}
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'MyBundle\Entity\Link'
));
}
}
class linkTranslationType extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('locale', 'text',array(
'label' => 'Anchor'
))
->add('linkText', 'text',array(
'label' => 'Anchor'
))
->add('linkUrl', 'text', array(
'label' => 'Url'
))
;
}
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'MyBundle\Entity\LinkTranslation'
));
}
}
id translatable_id linkText linkUrl locale
7 NULL Anchor http//url/en en_EN
$link = new Link();
if ($form->isValid() ) {
$link->mergeNewTranslations(); // but this also does assigm the Id to the translations
}
// persist($link); and flush()
foreach ($link->getTranslations() as $linkTranslation) {
$linkTranslation->setTranslatable($link);
$em->persist($linkTranslation);
}
$em->flush();
最佳答案
你应该添加一个 'by_reference'=>false
translations
的选项字段,然后在您的 Link
实体添加这些方法(见 https://symfony.com/doc/current/form/form_collections.html)
public function addTranslation(LinkTranslation $t)
{
$t->setTranslatable($this);
$this->getTranslations()->add($t);
}
public function removeTranslation(LinkTranslation $t)
{
$this->getTranslations()->remove($t);
}
关于symfony - 带有 knp Doctrine 扩展的 i18n 表单翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26741094/
它是如何呈现的 1 2 3 > >> (page numbers, next button, last page button) 我需要如何渲染 > (only next button) 如何在 Tw
我正在将 KnpSnappyBundle 用于我的 Symfony 项目,并且我正在尝试在我的配置文件中定义一些选项。但是,如果我设置,例如: knp_snappy: pdf:
我一直在使用 fos 用户包,其中每个用户都被分配到一个组,每个组都根据 fos 用户包提供特定角色,一切正常。 现在要制作一个菜单系统,我正在尝试使用 Knp 菜单包。现在要制作菜单结构,我想将每个
有没有办法在 KNP 菜单包中呈现自定义属性,如下所示: $menu = $factory->createItem(Role::ROLE_PROGRAM_EVENT_PLANNER, array(
我正在尝试获取当前显示在 knp paginator bundle 中的项目的当前索引,atm 我有这样的东西: {% for index, post in posts %} {{ index
我正在使用 knp paginator 包,但出现此错误 There is no such field [catalogId] in the given Query component, aliase
我需要使用 Knp Pagination Bundle 动态设置每页记录数的直接解决方案。 我阅读了此页 records per page allow user to choose - codeign
我在使用 JMS Serializer 排除某些 KNP Paginator 属性时遇到问题。 首先,这包含在 composer.json 中 ... "jms/serializer-bundle":
所以我决定在我的 Symfony 项目中使用 KnpMenuBundle,但是为了让菜单按照我的意图工作,我在 /vendor/knplabs/knp-menu/src/Knp/中添加了 2 行菜单/
我有一个关于为 Symfony2 渲染 KnpMenu Bundle 的问题。据我所知,匹配的路由项应该有一个“当前”类。我已经阅读了 Knp 文档,他们说了一些关于 RouteVoter 的内容,但
我正在使用 knp snappy 包从我的应用程序生成报告。但不起作用,当我调用 Controller 生成 pdf 时,会抛出下一个错误: The exit status code '1' says
是否可以简单地使用 ajax 运行 knp 分页器?有可能吗?最好的方法是什么? 问候迈克尔 最佳答案 不确定这是否是最佳解决方案,但我是这样做的: $(function(){ $('#dish-se
所以,我正在开发一个新闻门户网站。我正在使用 KNP 分页器,但出现错误:不能统计选择两个FROM组件的查询,无法区分 现在,我的源代码: #block of code from contro
我从 html 页面生成 pdf我想为 pdf 的每一页设置特定的宽度和高度,我在网上找不到任何东西,但在 bundle 中有一个 pdf.php 和 protected function confi
我有一个问题,knp paginator 只能像这样工作: $em = $this->get('doctrine.orm.entity_manager'); $dql = "
将类添加到 knp_menu's 的正确方法是什么?根元素 用 Twig ? 我尝试了很多东西: 1. {{ knp_menu_render('main', {'class': 'foo'}) }}
我正在使用“knp Doctrine Translatable”来翻译实体。到目前为止效果很好。 现在我想有一个通用的解决方案,适用于任何数量的语言。所以我想使用一个嵌入式表单(集合)来处理实体的可翻
只是好奇有两个不同的库处理 Doctrine2 行为/扩展(可记录、可时间戳等):KNPLabs DoctrineBehaviors和 Atlantic18 DoctrineExtensions ,这
所以我构建了一个菜单,如下例所示: createItem('root', array( 'navbar' => true, 'childrenAttributes' =
我正在使用 Symfony2。使用此代码生成 pdf 文件时: public function printAction($id) { // initialiser $deman
我是一名优秀的程序员,十分优秀!