我尝试使用StofDoctrineExtenstion
中的时间戳行为作为我的对象,但它不起作用。对象已成功保存,但未保存createdAt
属性。
这是我的配置:
#Doctrine ODM Configuration
doctrine_mongodb:
connections:
default:
server: mongodb://localhost:27017
options:
connect: true
default_database: rent
document_managers:
default:
auto_mapping: true
#stof doctrine extension
stof_doctrine_extensions:
mongodb:
default:
timestampable: true
和class(我也尝试对主对象使用timestampable行为)
use Gedmo\Mapping\Annotation as Gedmo;
/**
* @MongoDB\MappedSuperclass
*/
abstract class BaseApartment
{
/**
* @Gedmo\Timestampable(on="create")
* @MongoDB\Date
*/
private $createdAt;
}
Symfony 2.0.12,我的deps
文件:
[StofDoctrineExtensionsBundle]
git=git://github.com/stof/StofDoctrineExtensionsBundle.git
target=/bundles/Stof/DoctrineExtensionsBundle
version=v1.0 (also tried version 1.1)
[gedmo-doctrine-extensions]
git=git://github.com/l3pp4rd/DoctrineExtensions.git
target=gedmo-doctrine-extensions
怎么了?有什么想法吗?
答案 0 :(得分:1)
我认为这是版本兼容性的问题。问题(可能不是 问题,但至少一个问题)似乎是 gedmo-doctrine-extensions Stof的 DoctrineExtensionsBundle 彼此不兼容。
例如,我刚刚使用这个版本的配对(适用于Symfony版本2.0.15):
[gedmo-doctrine-extensions]
git=git://github.com/l3pp4rd/DoctrineExtensions.git
version=origin/doctrine2.1.x
[DoctrineExtensionsBundle]
git=git://github.com/stof/StofDoctrineExtensionsBundle.git
target=/bundles/Stof/DoctrineExtensionsBundle
version=origin/1.0.x
答案 1 :(得分:0)
尝试将deps
文件中的版本更改为:
[Stof-DoctrineExtensionsBundle]
git=https://github.com/stof/StofDoctrineExtensionsBundle.git
target=/bundles/Stof/DoctrineExtensionsBundle
version=origin/1.0.x
在我做出改变之前,我遇到了同样的问题,接着是bin/vendors install --reinstall
,它开始为我工作。