我有一个用CakePHP编写的PHP REST API作为项目的一部分.所有API端点都作为控制器中的单个方法存在,并接受参数并在JSON字符串中返回值.我试图想象我应该如何记录这些方法phpDocumentor2的参数和返回类型.
例如,如果我在UsersController中有一个edit()方法,它更新User模型的指定字段,其骨架如下所示(为简洁起见,我简化了代码):
public function edit() {
//Get arguments
$args = $this->request->data['args'];
$id = $args['id'];
//Perform processing
if (!$this->User->exists($id)) {
$data = $this->createError(300);
}
else {
$this->User->id = $id;
$saveData = array();
if (isset([$args['first_name'])) {
$saveData['User']['first_name'] = $args['first_name'];
}
if (isset([$args['last_name'])) {
$saveData['User']['last_name'] = $args['last_name'];
}
$isSaved = $this->User->save($saveData);
if (count($this->User->validationErrors) > 0) {
$data = $this->createError(202, $this->User->validationErrors);
}
else {
$data = array('status' => $isSaved ? 1 : 0);
}
}
//Output data
return $data;
}
Run Code Online (Sandbox Code Playgroud)
我可能会发送一个带有以下JSON的请求来修改用户的名字和姓氏:
{ …Run Code Online (Sandbox Code Playgroud) 我在Webpack上有一个项目,我正在尝试设置SASS进行转换.我相信我非常接近,虽然我的配置存在问题(这里的代码和详细信息).
使用代码运行webpack会产生以下错误:
/foobar/src/js/components/App.jsx
6:8 error Unable to resolve path to module '../../scss/components/app' import/no-unresolved
Run Code Online (Sandbox Code Playgroud)
在花了一段时间这一点,我注意到,如果我取代了import 'scss/components/app'线App.jsx与import '../../scss/components/app.scss'中,transpilation工作.这让我相信有两个问题:
resolve.rootWebpack配置不起作用,因为相对导入工作,但不是绝对的.resolve.extensionsWebpack配置也没有应用,因为我需要附加.scss文件扩展名以使其正常工作.其他说明:
resolve.root配置设置为数组(即[path.resolve(__dirname, './src')])无济于事.import路径console-loader了undefined.任何帮助将不胜感激,谢谢!
更新:一位朋友刚刚分享了这个问题不是来自sass-loader/等,而是来自eslint.这意味着这个问题的性质将会大不相同(更少的webpack,更多的eslint).
无论如何,我.eslintrc扩展了AirBNB的,我猜我需要根据这个插件的细节修改它.
感兴趣的部分是:
settings:
import/ignore:
- node_modules # mostly CommonJS (ignored by default)
- \.coffee$ # fraught with …Run Code Online (Sandbox Code Playgroud)