I'm developing application with Symfony2. Symfony2 is using Doctrine 2 for DBAL and ORM. As far as I know Doctrine2 doesn't have suport for BLOB data type. However I want to implement BLOB support through the custom data type mapping:
http://www.doctrine-project.org/docs/dbal/2.0/en/reference/types.html
However I'm struggling to understand where should this part go.
<?php
Type::addType('money', 'My\Project\Types\MoneyType');
$conn->getDatabasePlatform()->registerDoctrineTypeMapping('MyMoney', 'money');
Is anybody was going through it?
The reason I need a BLOB type is that I want to import mapping from existing MySQL database.
Another solution would be to register your Custom Type in the config file
You just need to add that in your config file:
# app/config/config.yml
doctrine:
dbal:
types:
money: My\Project\Types\MoneyType
You can find more info on how to register a custom mapping type in this Symfony Cookbook entry
According to the link in previous answer you can just add it to src/My/Project/MyProjectBundle.php
use My\Project\Types\MoneyType;
class MyProject extends Bundle
{
public function boot()
{
$em = $this->container->get('doctrine.orm.entity_manager');
Type::addType('money', MoneyType::class);
$em->getConnection()->getDatabasePlatform()->registerDoctrineTypeMapping('MyMoney','money');
}
}
after reading this example implementation of the blob datatype, I think this should go into your boostrap file.
来源:https://stackoverflow.com/questions/4837589/doctrine-custom-data-type