嘿,我必须在很多地方改变camelCase到snail_case.
我有以下示例:
billingAddress
paymentDetails
Run Code Online (Sandbox Code Playgroud)
我试图在PhpStorm中使用find和替换正则表达式
在'find'输入字段中我输入:
([A-Z])
Run Code Online (Sandbox Code Playgroud)
在"替换"输入字段中我输入:
_\L$1
Run Code Online (Sandbox Code Playgroud)
结果我得到了:
billing_LAddress
payment_LDetails
Run Code Online (Sandbox Code Playgroud)
为了获得以下结果,我需要更改什么:
billing_address
payment_details
Run Code Online (Sandbox Code Playgroud) 另一个问题.我有一个抽象的BaseLog实体,它保持与我的用户的关联.此外,我有2个实体(FooLog和BarLog),它们扩展了BaseLog.另外我有我的用户实体,假设有两个与Log的关联.一个用于FooLog,一个用于BarLog.这是我的问题.我收到错误消息,因为我不知道如何在扩展实体时覆盖BaseLog的inversedBy字段.请你帮助我好吗.
因为我认为我的解释不是很好,这里是我的实体的设置.
BaseLog
/** @ORM\MappedSuperclass */
abstract class BaseLog {
/**
* @ORM\ManyToOne(targetEntity="User", inversedBy="logs")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="user_id", referencedColumnName="id", nullable=true, onDelete="SET NULL")
* })
*/
private $user;
}
Run Code Online (Sandbox Code Playgroud)
FooLog
/** @ORM\Entity */
class FooLog extends BaseLog {
// Some additional fields
}
Run Code Online (Sandbox Code Playgroud)
BarLog
/** @ORM\Entity */
class BarLog extends BaseLog {
// Some additional fields
}
Run Code Online (Sandbox Code Playgroud)
用户
/** @ORM\Entity */
class User {
/**
* @ORM\OneToMany(targetEntity="FooLog", mappedBy="user", cascade={"persist"})
*/
private $fooLogs;
/**
* @ORM\OneToMany(targetEntity="BarLog", mappedBy="user", cascade={"persist"})
*/
private $barLogs;
} …Run Code Online (Sandbox Code Playgroud) 我开始关注 JSON 并想对其进行验证。
[
{
"remindAt": "2015-08-23T18:53:00+02:00",
"comment": "Postman Comment"
},
{
"remindAt": "2015-08-24T18:53:00+02:00",
"comment": "Postman Comment"
}
]
Run Code Online (Sandbox Code Playgroud)
我的架构目前看起来如下
{
"type": "array",
"required": true,
"properties": {
"type": "object",
"required": false,
"additionalProperties": false,
"properties": {
"remindAt": {
"required": true,
"type": "string",
"format": "date-time"
},
"comment": {
"required": true,
"type": "string"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是行不通的。即使我从 JSON ddata 中删除注释,它也会验证为真。我猜我的架构文件的结构是错误的。
为了验证我使用以下库 https://packagist.org/packages/justinrainbow/json-schema
请有人向我解释我做错了什么以及我如何正确验证给定的 JSON 数据?
提前致谢
doctrine-orm ×1
json ×1
jsonschema ×1
mapping ×1
orm ×1
php ×1
phpstorm ×1
regex ×1
schema ×1
symfony ×1
validation ×1