代码拉取完成,页面将自动刷新
同步操作将从 Discuz/Discuz-Q-Docs 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
/**
* {@inheritdoc}
*/
public function data(ServerRequestInterface $request, Document $document)
{
// 获取当前用户
$actor = $request->getAttribute('actor');
// 获取请求的参数
$inputs = $request->getQueryParams();
// 获取请求的IP
$ipAddress = Arr::get($request->getServerParams(), 'REMOTE_ADDR', '127.0.0.1');
$query = ClassifyRepository::query();
$query->where('id', $inputs['id']);
$data = $this->searcher->apply(
new ClassifySearch($actor, $inputs, $query)
)->search()->getSingle();
return $data;
}
namespace App\Searchs\Classify;
use Discuz\Search\AbstractSearch;
class ClassifySearch extends AbstractSearch
{
/**
* 可被包括的关联方法.
* 返回数据需要关联的数据,多个关联用","间隔,"-"会把后面的单词首字母大写拼接到前面的单词.
*
* @var User
*/
public $includes = [
'firstPost',
'last-post',
'user'
];
/**
* 默认显示多少条数据.
*
* @var int
*/
public $defaultLimit = 10;
/**
* 可被排序的字段.
*
* @var string
*/
public $sort = [
'id',
'name'
];
/**
* 默认的排序字段.
*
* @var string
*/
public $defaultSort = [
'id'=>'desc'
];
}
namespace App\Searchs\Classify;
use Discuz\Search\AbstractSearchBuilder;
use Discuz\Api\Events\SearchModelField;
class ClassifySearchBuilder extends AbstractSearchBuilder
{
/**
* 定义查询条件的方法
*
* @param $actor
* @param $query
* @param $content
* @return null
*/
public function name($actor, $query, $content)
{
$query->where('name', 'like', '%'.$content.'%');
$this->event->dispatch(
new SearchModelField($actor, $query, 'name', $content)
);
}
/**
* 定义关联模型的方法
*
* @param $actor
* @param $query
* @return null
*/
public function firstPost($actor, $query)
{
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。