我对prestashop 1.7中select2中的ajax有问题。当我尝试写一些东西时,调用是200,但我得到错误“控制器Psb2BAjaxModuleAdmin丢失或无效。”
我在模块modules/psb2b/src/Controller/psb2bajaxmoduledmincontroller中创建了用于测试的控制器。php
<?php
namespace Scenario\PSB2B\Controller;
use Symfony\Component\HttpFoundation\JsonResponse;
use PrestaShopBundle\Controller\Admin\FrameworkBundleAdminController;
class Psb2BAjaxModuleAdminController extends FrameworkBundleAdminController
{
public function __construct()
{
parent::__construct();
}
public function initContent()
{
parent::initContent();
return $this->ajaxDie(json_encode("test"));
}
public function postProcess()
{
PrestaShopLogger::addLog("MODULE CONTROLLER OK ", 1);
}
public function displayAjax()
{
$usb_search_token = $this->generateUrl("psb2bAjaxAdmin");
return $this->ajaxDie(json_encode("test"));
}
}
在admin目录admin*********/themes/default/js中
$(document).ready(function(){
$('#category_features').select2({
width: 'resolve',
ajax: {
type: 'POST',
url: usb_search_token,
dataType:'json',
delay: 250,
data: function (params) {
return {
q: params.term // search term
};
},
success: function (result) {
console.log(result);
}
} });
});
在我的模块中,我使用了hook
public function hookActionAdminControllerSetMedia()
{
MediaCore::addJsDefL('usb_search_token', $this->context->link->getAdminLink('Psb2BAjaxModuleAdmin'));
$this->context->controller->addCSS(_PS_BO_ALL_THEMES_DIR_ . 'default/js/select2-full/dist/css/select2.min.css','all');
$this->context->controller->addJS(_PS_BO_ALL_THEMES_DIR_ . 'default/js/select2-full/dist/js/select2.min.js');
$this->context->controller->addJS(_PS_BO_ALL_THEMES_DIR_ . 'default/js/tree.js');
}
您的控制器看起来更像是1.6版本,而不是带有Symfony的1.7版本。
我通常在controllers/Admin/my_controller中有一个索引方法。php。
在这个方法中,我使用一个
Media::addJsDef(array(
'usb_search_token' => admin_link));
));
然后,由于此方法返回
return $this->render('@Modules/rmvcolorgrid/views/admin/my_file.html.twig', [])
该URL可用于views/js/back中的js文件。js。
您应该看看PS文档,以了解构建此文档的推荐方法。
Fire-and-forget 的调用方法极其简单。正如您从 快速开始 一节中了解到,您只需要传递一个具有相应方法和参数的lambda表达式: BackgroundJob.Enqueue(() => Console.WriteLine("Hello, world!")); Enqueue 方法不会立即调用目标方法,而是运行以下步骤: 序列化目标方法及其所有参数。 根据序列化的信息创建一个新的后台任
我已经创建了一个Prestashop Backoffice模块,但在单击菜单中的模块选项卡时,我发现错误:在此处输入图像描述404页面未找到? 我想在点击模块选项卡上创建一个模板,并在那里显示一些文本。
获取用户列表 接口 GET https://cloud.minapp.com/userve/v1/miniapp/user-profile/ 参数说明 参数 类型 必填 说明 created_at String N 用户创建的时间,值为时间戳。查询创建时间大于等于 2017-01-01 的用户 created_at__gte=1483228800,查询创建时间小于等于 2017-01-01 的用户
后台模板 自定义后台栏目列表页 自定义后台信息新增页 自定义后台信息编辑页 方法1(针对所有属于此模型的栏目) 修改模型信息 方法2(仅针对当前栏目) 修改栏目信息 修改完成之后 栏目列表页 在/app/Application/Content/View/Listtemplate/里添加对应的名字的文件 信息新增页 在/app/Application/Content/View/Addtempla
当用户未连接到xmpp时,我正在使用FCM通知进行聊天。 FCM中有两种通知模式1。通知消息2。数据消息 如果我的应用程序最近被清除,我将不会使用数据消息作为通知消息 这种方法适用于除奥利奥以外的所有版本。 对于Oreo,我只有在应用程序未连接到xmpp且处于前台时才会收到通知。我的onMessageReception方法正在被调用。 但当该应用程序仅为奥利奥而被删除或从最近的应用程序中删除时,情