(Symfony)无关联地加入两个表

时间:2016-03-06 00:19:42

标签: symfony doctrine-orm doctrine symfony-forms php-5.5

在我的实体之间没有关系

在我的页面网页中,我使用Ajax有两个相关的下拉列表。对于第一个我有不同的标题,我的表是这样的:标题(title_id,标题)。这是我的代码,用于在我的控制器中的下拉列表中显示标题

$title = $em->getRepository('...Bundle:Title')->findAll();
$MesTitle = array();
foreach ( $title as $une) {
    $MesTitle[ $une->getTitleid() ]=  $une->getTitle();
}

$formTitle->add("title", "choice", 
    array(
        "label" => "Title" ,
        'empty_value' => 'select your Title',
        "choices" =>$MesTitle
    )
);  

对于第二个,当用户选择一个标题时,我们必须向他显示标题Selected的副标题,为此我有两个表:第一个是HasTitle(title_id,sub_title_id),第二个是SubTitle(sub_title_id,sub_title)。为此,我使用AJAX,这是我的代码:

$('#title_title').change(function() {
    var titleid = $("#title_title option:selected").val();
    console.log(titleid);
    $.ajax({
        type:'get',
        url:'http://localhost:.../.../web/app_dev.php/....../',
        beforeSend: function(){
            console.log('cooll');
        },
        success: function(data){
            console.log(data);
        }   
    });
});

我需要一个控制器中的方法,从JS(AJAX)中取$title_id并给我sub_title的值,以便在第二个下拉列表中显示它们。

在我的实体之间没有关系

谢谢

1 个答案:

答案 0 :(得分:0)

您需要使用带有symfony表单和jquery的表单事件。 当您使用第一个选择的值提交表单时,您需要在第二个中加载值。在Symfony网站上,您可以看到一个体育示例。 http://symfony.com/doc/2.8/cookbook/form/dynamic_form_modification.html#cookbook-form-events-submitted-data

您需要为第一个选择创建一个事件。 问候。