nettrine, xml mapa pšatný data type

marsuch
Člen | 3
+
0
-

Ahoj, do projektu jsem nainstalovat doctrine, podle návodu na githubu. Zaregistroval a nastavil vše potřebné:

extensions:
    console: Contributte\Console\DI\ConsoleExtension(%consoleMode%)

    nettrine.dbal: Nettrine\DBAL\DI\DbalExtension
    nettrine.dbal.console: Nettrine\DBAL\DI\DbalConsoleExtension(%consoleMode%)


    nettrine.cache: Nettrine\Cache\DI\CacheExtension

    nettrine.orm: Nettrine\ORM\DI\OrmExtension
    nettrine.orm.cache: Nettrine\ORM\DI\OrmCacheExtension
    nettrine.orm.xml: Nettrine\ORM\DI\OrmXmlExtension
    nettrine.orm.console: Nettrine\ORM\DI\OrmConsoleExtension(%consoleMode%)

console:
    url: http://localhost

nettrine.orm.xml:
  mapping: [
    namespace: %appDir%/Model/Entity/xml
  ]
  fileExtension: .dcm.xml
  simple: false

Vše by mělo být nastaveno správně, nicméně pokud se pokusím o nějakou akci, třeba přihlášení uživatele:

<?xml version="1.0" encoding="UTF-8"?>
<doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping
                                      https://www.doctrine-project.org/schemas/orm/doctrine-mapping.xsd">

    <entity name="App\Model\Entity\User" table="user">
        <id name="id" type="integer" column="id">
            <generator strategy="AUTO"/>
        </id>
        <field name="username" length="32" type="string" />
        <field name="password" length="255" type="string" />
        <field name="role" length="16"  type="string" />
    </entity>

</doctrine-mapping>

Tak dostanu vyhubováno:

Doctrine\ORM\Persisters\Entity\BasicEntityPersister::getSelectConditionStatementColumnSQL(): Argument #1 ($field) must be of type string, int given, called in /var/www/html/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php on line 1654 search►

Což je divné protože xml mapu mám namapovanou správně. Pro úplnost přidám ještě sql kód tabulky.

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(32) NOT NULL,
  `password` varchar(255) NOT NULL,
  `role` varchar(16) NOT NULL DEFAULT 'guest',
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_general_ci;