【问题标题】:October CMS - Ajax URL?十月 CMS - Ajax URL?
【发布时间】:2016-05-09 17:22:43
【问题描述】:

我想在 10 月的 CMS 中使用 Angular JS。但是如何将数据 POST 到控制器?

我在 10 月的 framework.js 文件中找到了这个

headers: {
    'X-OCTOBER-REQUEST-HANDLER': handler,
    'X-OCTOBER-REQUEST-PARTIALS': this.extractPartials(options.update)
},

但我很难调试它。

此帖子的网址是什么?我将如何使用this.extractPartials(options.update)

【问题讨论】:

    标签: angularjs octobercms


    【解决方案1】:

    如果你想向控制器发布一个简单的数据,并想更新视图文件,那么你最好使用 october cms 通过数据属性处理 AJAX 的便捷方式。

    <form data-request="onHandlerName" data-request-data="var:'value'" data-request-update="'partial-name':'#selector-name'" >
        <!-- form fields
             do the necessary things -->
    </form>
    
    <div id="selector-name">
        <!-- you may or may not have the partial here before. Like {% partial 'partial-name' %}  -->
    </div>
    

    参考文档https://octobercms.com/docs/cms/ajax。只有在发布文件数据等复杂情况时,您才可以使用 java script ajax api..

    【讨论】:

      【解决方案2】:

      您似乎想使用 angular 来触发 AJAX。

      您只需要处理程序作为另一部分“部分事物”,您可以在发出请求时自行处理。

      X-OCTOBER-REQUEST-HANDLER:>::>

      <<_action>> -> here you need method which has prefix "on"
      

      onListUpdate 类似的东西。

      然后,October 会自动找到该控制器和该操作并返回 json 响应,您可以随意使用该响应。

      【讨论】:

        【解决方案3】:

        我对 JS 框架了解不多,但我认为 10 月份的标准响应数据是呈现为 html 的,并且脚本/样式将由框架注入。相反,您应该创建自己的路由并返回适当的响应。

        例如:

        # Author/Plugin/Plugin.php
        
        public function onBoot() {
            Route::get('ajax/endpoint', function() { return Post::all() });
        });
        

        【讨论】:

          猜你喜欢
          • 2019-01-13
          • 2017-06-24
          • 1970-01-01
          • 2018-04-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多