CakePHP在不同的Controller中渲染不同的视图

时间:2016-11-29 15:01:29

标签: javascript cakephp cakephp-3.0

我在视图中创建一个按钮,启动一个javascript函数,启动对我控制器中的函数的发布请求。现在我想在这个控制器中说从按钮在视图中渲染一个ctp文件。

这是我的名为'show_article'的开始视图:

<p>Add Article here</p>
<form>
<p>Articlename: <span id="ajax_name_text"></span></p> <input type="text" id="ajax_name">
 Preis: <input type="number" id="ajax_preis">
 Anzahl: <input type="number" id="ajax_anzahl">
 <button type="button" onClick="add_article_ajax()">Add Article</button>
 </form>

按钮用这个开始一个javascript函数:

$.post('/users/addArticleAjax',{

    article_name: new_insert_name,
    preis: new_insert_preis,
    anzahl: new_insert_anzahl,
    owner: new_insert_owner

}, function(message){

    alert(message);

});

在用户控制器中的功能是'addArticleAjax',其中包含:

$this->autoRender = false;

    $articlesTable = TableRegistry::get('Articles');
    $article = $articlesTable->newEntity();

    $article->name = $this->request->data('article_name');
    $article->price = $this->request->data('preis');
    $article->anzahl = $this->request->data('anzahl');
    $article->owner = $this->request->data('owner');

    if ($this->request->is('ajax')){ 

        //$articlesTable->save($article);

        //insert ctp view in show_article

    }

我尝试使用此$this->render('test_ajax_call');,但这会将响应发送回javascript,这不是我想要的。 我想在开始视图中通过php插入ctp数据

0 个答案:

没有答案