我刚刚安装了 Symfony 4 项目,并在composer.json以下位置找到了这一部分:
"scripts": {
"auto-scripts": {
"cache:clear": "symfony-cmd",
"assets:install %PUBLIC_DIR%": "symfony-cmd"
},
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
],
...
Run Code Online (Sandbox Code Playgroud)
我发现auto-scriptsComposer 以某种方式处理了该部分:key 是一个命令bin/console,value 是一个命令“类型”(在这种情况下它是 Symfony 的)。由于它没有在 Composer 网站上记录,我认为它不是法律定义,但它有效,我的问题是 Composer 如何知道如何执行这些命令?Composer 怎么知道是什么symfony-cmd?
第三个参数的用途是KeyEqual什么std::unordered_set?哈希唯一性还不够吗?
template<
class Key,
class Hash = std::hash<Key>,
class KeyEqual = std::equal_to<Key>,
class Allocator = std::allocator<Key>
> class unordered_set;
Run Code Online (Sandbox Code Playgroud)
抱歉,如果这个问题听起来很幼稚。从 Python/PHP 迁移到 C++ :)
现在我的实现KeyEqual总是重复Hashimpl。所以我想知道我是否做得正确。
有人可以解释为什么UniqueEntity 约束类定义:
// ...
public $service = 'doctrine.orm.validator.unique';
public function validatedBy()
{
return $this->service;
}
//...
Run Code Online (Sandbox Code Playgroud)
而不仅仅是:
public function validatedBy()
{
return "UniqueEntityValidator";
}
Run Code Online (Sandbox Code Playgroud)
UniqueEntityValidator类存在并具有所需的所有逻辑.这里的服务点是什么?
我问这个是因为现在由于某些依赖性,我不能在Symfony框架之外使用UniqueEntity.