代码之家  ›  专栏  ›  技术社区  ›  James Skidmore

在symfony中,如何在操作中将呈现的模板内容作为变量检索?

  •  0
  • James Skidmore  · 技术社区  · 16 年前

    我想在symfony操作中设置一个变量,保存该操作的呈现模板数据。我将用该操作返回一些JSON内容,并希望将该操作将输出的内容存储到JSON中并返回它。

    public function executeAjaxPriceAdditionCreate(sfWebRequest $request)
    {
        $this->form = new ProductPriceAdditionAjaxForm();
    
        $json['success'] = $this->processAjaxPriceAdditionForm($request, $this->form);
        $this->setTemplate('ajaxPriceAdditionNew');
        $json['content'] = ???; // THIS IS WHERE THE RENDERED TEMPLATE CONTENT SHOULD GO.
    
                $this->getResponse()->setHttpHeader('Content-Type','application/json; charset=utf-8');
        return $this->renderText(json_encode($json));
    }
    
    3 回复  |  直到 12 年前
        1
  •  2
  •   Colin Fine    16 年前

    如果将模板命名为分部,则可以使用

    $json['content] = $this->getPartial('ajaxPriceAdditionNew');
    

    getPartial API

        2
  •  0
  •   James Skidmore    16 年前

    我最终做的是使用闪存而不是发送JSON。Ajax内容的模板试图检测顶部的flash,如果是这样,它会执行“成功”方法(关闭模式弹出框)。

        3
  •  0
  •   jcjr Thunder-KC Inc    12 年前
    exit($this->getPartial('ajaxPriceAdditionNew'));
    
    // apps/frontend/modules/community/templates/_ajaxPriceAdditionNew.php