Jer*_*oen 1 php mysql laravel eloquent lumen
我想board
通过它的PK 从表中选择一个项目boardId
.然而,无论给定的参数如何,Board::find(2)
或Board::find(1)
返回所有项目.
我有下表:
使用相应的流明模型:
class Board extends CustomModel
{
protected $fillable = [
'userId', 'boardName', 'private'
];
protected $primaryKey = 'boardId';
protected $table = 'board';
}
Run Code Online (Sandbox Code Playgroud)
自定义模型是:
abstract class CustomModel extends Model
{
use Authenticatable, Authorizable;
const CREATED_AT = 'createdAt';
const UPDATED_AT = 'updatedAt';
}
Run Code Online (Sandbox Code Playgroud)
用它来调用:
$boardId = 2;
return Board::find($boardId)->get();
Run Code Online (Sandbox Code Playgroud)
还尝试过:
$boardId = 2;
return Board::find($boardId)->first();
Run Code Online (Sandbox Code Playgroud)
以下内容:
$boardId = 2;
return Board::find($boardId)->toSql();
Run Code Online (Sandbox Code Playgroud)
返回:select * from 'board'
.所以没有where boardId = ?
或什么,这就是问题所在.我究竟做错了什么 ?
我正在运行PHP 7.2.0和Lumen 5.5.2.其他模型的查询工作正常.
你说你用它来调用它get()
:
return Board::find($boardId)->get();
Run Code Online (Sandbox Code Playgroud)
但是你不应该添加,get()
因为它将返回所有对象的集合.这样做:
return Board::find($boardId);
Run Code Online (Sandbox Code Playgroud)