创建eslint自定义规则以防止SQL文件中的“ NOT NULL”

时间:2019-03-31 12:25:27

标签: eslint rules

我想有一个自定义的Eslint规则,以便所有以下文件:

apps / database / migrations / *。sql

没有以下字符串 /** * Iterates over the menu array * @return mixed item from menu * @access public */ function fetch () { $item = current($this->menu); if ( $item ) { next($this->menu); return $item; } reset($this->menu); return false; } 。例如,如果文件是:

NOT NULL

我要触发规则。

我不知道ESLINT代码分析器如何处理这些SQL文件,所以我不知道从哪里开始。甚至有可能吗,或者它仅适用于.js文件?

1 个答案:

答案 0 :(得分:0)

创建基于解析器的 Eslint 规则。让我们假设如果我想为 javascript 编写一个规则,他们的许多解析器。

对于 SQL 查询,我们需要使用 sql-parse。每个解析器返回一个特定的 AST,我们可以根据需要在其上编写条件。

以下是一些开源示例:https://github.com/uphold/eslint-plugin-sql-template/blob/master/rules/no-unsafe-query.js