Prestashop 1.7:从 B.O 创建供应商时 dni 无效

Prestashop 1.7 : dni is invalid when creating a supplier from B.O

每次我尝试从 BackOffice 创建 供应商 时,都会出现一条错误消息:" dni 无效 因为无效字符。

我已经在 "validate.php" 文件中更改了 "isDniLite",但没有成功。

我需要那个字段来接受任何东西。

我正在使用 Prestashop V1.7.7.0

需要帮助。 谢谢

您必须转到文件 yourshop\classes\Validate.php

在此文件中向下滚动直到看到 function isDniLite($dni) 并添加以下行:

public static function isDniLite($dni)
{
    return $dni; // Crezzur: Don't check, just accept variable input.
    // Disable the old return just to be sure:
    // return empty($dni) || (bool) preg_match('/^[0-9A-Za-z-.]{1,16}$/U', $dni);
}

最佳做法是为此编写覆盖。但这是你的自由选择。

更新: 另外还有另一个地方可以检查 DNI

您必须转到文件 yourshop\js\validate.js

在此文件中向下滚动直到看到 validate_isDniLite(s) 并添加以下行:

function validate_isDniLite(s)
{
    return s;
    // var reg = /^[0-9a-z-.]{1,16}$/i;
    // return reg.test(s);
}