Deprecated: Function get_magic_quotes_gpc() is deprecated in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 99
Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 619
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 832
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 839
(window.webpackJsonp=window.webpackJsonp||[]).push([[117],{408:function(t,s,a){"use strict";a.r(s);var e=a(7),n=Object(e.a)({},(function(){var t=this,s=t.$createElement,a=t._self._c||s;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("div",{staticClass:"pb-8 border-b border-gray-300"},[a("h1",[t._v("Contributte Doctrine-dbal")]),t._v(" "),a("div"),t._v(" "),a("div",{staticClass:"flex flex-col space-y-2 mt-2"},[a("div",{staticClass:"flex flex-row space-x-2 items-center"},[a("img",{staticClass:"opacity-50",attrs:{loading:"lazy",src:"https://obr.vercel.app/fa/b/github/16"}}),t._v(" "),a("a",{attrs:{href:"https://github.com/contributte/doctrine-dbal"}},[t._v("github.com/contributte/doctrine-dbal")])]),t._v(" "),a("div",{staticClass:"flex flex-row space-x-2 items-center"},[a("img",{staticClass:"opacity-50",attrs:{loading:"lazy",src:"https://obr.vercel.app/fa/s/download/16"}}),t._v(" "),a("a",{attrs:{href:"https://packagist.org/packages/nettrine/dbal",target:"_blank"}},[t._v("packagist.org/packages/nettrine/dbal")])])])]),t._v(" "),a("p",[a("a",{attrs:{href:"https://www.doctrine-project.org/projects/dbal.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("Doctrine/DBAL"),a("OutboundLink")],1),t._v(" for Nette Framework.")]),t._v(" "),a("h2",{attrs:{id:"content"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#content"}},[t._v("#")]),t._v(" Content")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"#setup"}},[t._v("Setup")])]),t._v(" "),a("li",[a("a",{attrs:{href:"#relying"}},[t._v("Relying")])]),t._v(" "),a("li",[a("a",{attrs:{href:"#configuration"}},[t._v("Configuration")])]),t._v(" "),a("li",[a("a",{attrs:{href:"#usage"}},[t._v("Usage")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"#types"}},[t._v("Types")])]),t._v(" "),a("li",[a("a",{attrs:{href:"#debug"}},[t._v("Debug")])]),t._v(" "),a("li",[a("a",{attrs:{href:"#events"}},[t._v("Events")])])])]),t._v(" "),a("li",[a("a",{attrs:{href:"#bridges"}},[t._v("Bridges")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"#PSR-3"}},[t._v("PSR3")])])])]),t._v(" "),a("li",[a("a",{attrs:{href:"#examples"}},[t._v("Examples")])]),t._v(" "),a("li",[a("a",{attrs:{href:"#other"}},[t._v("Other")])])]),t._v(" "),a("h2",{attrs:{id:"setup"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#setup"}},[t._v("#")]),t._v(" Setup")]),t._v(" "),a("p",[t._v("Install package")]),t._v(" "),a("div",{staticClass:"language-bash line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("composer")]),t._v(" require nettrine/dbal\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br")])]),a("p",[t._v("Register extension")]),t._v(" "),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("extensions")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\DBAL\\DI\\DbalExtension")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br")])]),a("h2",{attrs:{id:"relying"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#relying"}},[t._v("#")]),t._v(" Relying")]),t._v(" "),a("p",[t._v("Take advantage of enpowering this package with 2 extra packages:")]),t._v(" "),a("ul",[a("li",[a("code",[t._v("doctrine/cache")])]),t._v(" "),a("li",[a("code",[t._v("symfony/console")])])]),t._v(" "),a("h3",{attrs:{id:"doctrine-cache"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#doctrine-cache"}},[t._v("#")]),t._v(" "),a("code",[t._v("doctrine/cache")])]),t._v(" "),a("p",[t._v("This package relies on "),a("code",[t._v("doctrine/cache")]),t._v(", use prepared "),a("a",{attrs:{href:"https://github.com/contributte/doctrine-cache",target:"_blank",rel:"noopener noreferrer"}},[t._v("nettrine/cache"),a("OutboundLink")],1),t._v(" integration.")]),t._v(" "),a("div",{staticClass:"language-bash line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("composer")]),t._v(" require nettrine/cache\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br")])]),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("extensions")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.cache")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\Cache\\DI\\CacheExtension")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br")])]),a("p",[a("a",{attrs:{href:"https://www.doctrine-project.org/projects/dbal.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("Doctrine DBAL"),a("OutboundLink")],1),t._v(" needs "),a("a",{attrs:{href:"https://www.doctrine-project.org/projects/cache.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("Doctrine Cache"),a("OutboundLink")],1),t._v(" to be configured. If you register "),a("code",[t._v("nettrine/cache")]),t._v(" extension it will detect it automatically.")]),t._v(" "),a("h3",{attrs:{id:"symfony-console"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#symfony-console"}},[t._v("#")]),t._v(" "),a("code",[t._v("symfony/console")])]),t._v(" "),a("p",[t._v("This package relies on "),a("code",[t._v("symfony/console")]),t._v(", use prepared "),a("a",{attrs:{href:"https://github.com/contributte/console",target:"_blank",rel:"noopener noreferrer"}},[t._v("contributte/console"),a("OutboundLink")],1),t._v(" integration.")]),t._v(" "),a("div",{staticClass:"language-bash line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("composer")]),t._v(" require contributte/console\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br")])]),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("extensions")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("console")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Contributte\\Console\\DI\\ConsoleExtension")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("%consoleMode%")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\DBAL\\DI\\DbalExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal.console")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\DBAL\\DI\\DbalConsoleExtension")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("(")]),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("%consoleMode%")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(")")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br"),a("span",{staticClass:"line-number"},[t._v("3")]),a("br"),a("span",{staticClass:"line-number"},[t._v("4")]),a("br"),a("span",{staticClass:"line-number"},[t._v("5")]),a("br")])]),a("p",[t._v("Since this moment when you type "),a("code",[t._v("bin/console")]),t._v(", there'll be registered commands from Doctrine DBAL.")]),t._v(" "),a("p",[a("img",{attrs:{src:"https://raw.githubusercontent.com/nettrine/dbal/master/.docs/assets/console.png",alt:"Console Commands"}})]),t._v(" "),a("h2",{attrs:{id:"configuration"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#configuration"}},[t._v("#")]),t._v(" Configuration")]),t._v(" "),a("p",[a("strong",[t._v("Schema definition")])]),t._v(" "),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("debug")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("panel")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("sourcePaths")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("configuration")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("middlewares")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("resultCache")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("filterSchemaAssetsExpression")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("autoCommit")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("connection")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("url")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("pdo")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("memory")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("driver")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("driverClass")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("host")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("dbname")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("servicename")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("user")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("password")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("charset")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("portability")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("fetchCase")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("persistent")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("wrapperClass")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("types")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("typesMapping")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br"),a("span",{staticClass:"line-number"},[t._v("3")]),a("br"),a("span",{staticClass:"line-number"},[t._v("4")]),a("br"),a("span",{staticClass:"line-number"},[t._v("5")]),a("br"),a("span",{staticClass:"line-number"},[t._v("6")]),a("br"),a("span",{staticClass:"line-number"},[t._v("7")]),a("br"),a("span",{staticClass:"line-number"},[t._v("8")]),a("br"),a("span",{staticClass:"line-number"},[t._v("9")]),a("br"),a("span",{staticClass:"line-number"},[t._v("10")]),a("br"),a("span",{staticClass:"line-number"},[t._v("11")]),a("br"),a("span",{staticClass:"line-number"},[t._v("12")]),a("br"),a("span",{staticClass:"line-number"},[t._v("13")]),a("br"),a("span",{staticClass:"line-number"},[t._v("14")]),a("br"),a("span",{staticClass:"line-number"},[t._v("15")]),a("br"),a("span",{staticClass:"line-number"},[t._v("16")]),a("br"),a("span",{staticClass:"line-number"},[t._v("17")]),a("br"),a("span",{staticClass:"line-number"},[t._v("18")]),a("br"),a("span",{staticClass:"line-number"},[t._v("19")]),a("br"),a("span",{staticClass:"line-number"},[t._v("20")]),a("br"),a("span",{staticClass:"line-number"},[t._v("21")]),a("br"),a("span",{staticClass:"line-number"},[t._v("22")]),a("br"),a("span",{staticClass:"line-number"},[t._v("23")]),a("br"),a("span",{staticClass:"line-number"},[t._v("24")]),a("br"),a("span",{staticClass:"line-number"},[t._v("25")]),a("br"),a("span",{staticClass:"line-number"},[t._v("26")]),a("br"),a("span",{staticClass:"line-number"},[t._v("27")]),a("br"),a("span",{staticClass:"line-number"},[t._v("28")]),a("br")])]),a("p",[a("strong",[t._v("Under the hood")])]),t._v(" "),a("p",[t._v("Minimal configuration could look like this:")]),t._v(" "),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("debug")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("panel")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("%debugMode%")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("sourcePaths")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("%appDir%")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("connection")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("host")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("localhost")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("driver")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("mysqli")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("dbname")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("nettrine")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("user")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("root")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("password")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("root")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br"),a("span",{staticClass:"line-number"},[t._v("3")]),a("br"),a("span",{staticClass:"line-number"},[t._v("4")]),a("br"),a("span",{staticClass:"line-number"},[t._v("5")]),a("br"),a("span",{staticClass:"line-number"},[t._v("6")]),a("br"),a("span",{staticClass:"line-number"},[t._v("7")]),a("br"),a("span",{staticClass:"line-number"},[t._v("8")]),a("br"),a("span",{staticClass:"line-number"},[t._v("9")]),a("br"),a("span",{staticClass:"line-number"},[t._v("10")]),a("br")])]),a("p",[t._v("Take a look at real "),a("strong",[t._v("Nettrine DBAL")]),t._v(" configuration example at "),a("a",{attrs:{href:"https://github.com/contributte/webapp-skeleton/blob/d23e6cbac9b91d6d069583f1661dd1171ccfe077/app/config/ext/nettrine.neon",target:"_blank",rel:"noopener noreferrer"}},[t._v("contributte/webapp-project"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("h3",{attrs:{id:"types"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#types"}},[t._v("#")]),t._v(" Types")]),t._v(" "),a("p",[t._v("Here is an example of how to register custom type for "),a("a",{attrs:{href:"https://github.com/ramsey/uuid-doctrine",target:"_blank",rel:"noopener noreferrer"}},[t._v("UUID"),a("OutboundLink")],1),t._v(".")]),t._v(" "),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("connection")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("types")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("uuid")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Ramsey\\Uuid\\Doctrine\\UuidType")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("uuid_binary_ordered_time")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("class")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Ramsey\\Uuid\\Doctrine\\UuidBinaryOrderedTimeType")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("commented")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token boolean"}},[t._v("false")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("typesMapping")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("uuid_binary_ordered_time")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("binary")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br"),a("span",{staticClass:"line-number"},[t._v("3")]),a("br"),a("span",{staticClass:"line-number"},[t._v("4")]),a("br"),a("span",{staticClass:"line-number"},[t._v("5")]),a("br"),a("span",{staticClass:"line-number"},[t._v("6")]),a("br"),a("span",{staticClass:"line-number"},[t._v("7")]),a("br"),a("span",{staticClass:"line-number"},[t._v("8")]),a("br"),a("span",{staticClass:"line-number"},[t._v("9")]),a("br"),a("span",{staticClass:"line-number"},[t._v("10")]),a("br"),a("span",{staticClass:"line-number"},[t._v("11")]),a("br")])]),a("p",[t._v("For more information about custom types, take a look at the official documention.")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/types.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/types.html"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("a",{attrs:{href:"http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/custom-mapping-types.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/cookbook/custom-mapping-types.html"),a("OutboundLink")],1)])]),t._v(" "),a("h3",{attrs:{id:"debug"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#debug"}},[t._v("#")]),t._v(" Debug")]),t._v(" "),a("p",[t._v("Enable or disable Tracy panel via "),a("code",[t._v("debug.panel")]),t._v(" key.")]),t._v(" "),a("p",[t._v("Alternatively, specify your application root path under the "),a("code",[t._v("debug.sourcePaths")]),t._v(" key to display correct queries source map in Tracy panel.")]),t._v(" "),a("h3",{attrs:{id:"middlewares"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#middlewares"}},[t._v("#")]),t._v(" Middlewares")]),t._v(" "),a("blockquote",[a("p",[t._v("Since Doctrine v3.6 you have to use middlewares instead of event system, see issue "),a("a",{attrs:{href:"https://github.com/doctrine/dbal/issues/5784",target:"_blank",rel:"noopener noreferrer"}},[t._v("doctrine/dbal#5784"),a("OutboundLink")],1),t._v(".")])]),t._v(" "),a("p",[t._v("Middlewares are the way how to extend doctrine library or hook to special events.")]),t._v(" "),a("div",{staticClass:"language-neon line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-neon"}},[a("code",[a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("connection")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("middlewares")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("-")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("MyMiddleware")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br"),a("span",{staticClass:"line-number"},[t._v("3")]),a("br"),a("span",{staticClass:"line-number"},[t._v("4")]),a("br")])]),a("div",{staticClass:"language-php line-numbers-mode"},[a("pre",{pre:!0,attrs:{class:"language-php"}},[a("code",[a("span",{pre:!0,attrs:{class:"token php language-php"}},[a("span",{pre:!0,attrs:{class:"token delimiter important"}},[t._v(" Nettrine")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# => order is crucial")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("#")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("extensions")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# Common")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.annotations")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\Annotations\\DI\\AnnotationsExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.cache")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\Cache\\DI\\CacheExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.migrations")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\Migrations\\DI\\MigrationsExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.fixtures")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\Fixtures\\DI\\FixturesExtension")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# DBAL")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\DBAL\\DI\\DbalExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.dbal.console")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\DBAL\\DI\\DbalConsoleExtension")]),t._v("\n\n "),a("span",{pre:!0,attrs:{class:"token comment"}},[t._v("# ORM")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.orm")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\ORM\\DI\\OrmExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.orm.cache")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\ORM\\DI\\OrmCacheExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.orm.console")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\ORM\\DI\\OrmConsoleExtension")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token key atrule"}},[t._v("nettrine.orm.annotations")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token literal string"}},[t._v("Nettrine\\ORM\\DI\\OrmAnnotationsExtension")]),t._v("\n")])]),t._v(" "),a("div",{staticClass:"line-numbers-wrapper"},[a("span",{staticClass:"line-number"},[t._v("1")]),a("br"),a("span",{staticClass:"line-number"},[t._v("2")]),a("br"),a("span",{staticClass:"line-number"},[t._v("3")]),a("br"),a("span",{staticClass:"line-number"},[t._v("4")]),a("br"),a("span",{staticClass:"line-number"},[t._v("5")]),a("br"),a("span",{staticClass:"line-number"},[t._v("6")]),a("br"),a("span",{staticClass:"line-number"},[t._v("7")]),a("br"),a("span",{staticClass:"line-number"},[t._v("8")]),a("br"),a("span",{staticClass:"line-number"},[t._v("9")]),a("br"),a("span",{staticClass:"line-number"},[t._v("10")]),a("br"),a("span",{staticClass:"line-number"},[t._v("11")]),a("br"),a("span",{staticClass:"line-number"},[t._v("12")]),a("br"),a("span",{staticClass:"line-number"},[t._v("13")]),a("br"),a("span",{staticClass:"line-number"},[t._v("14")]),a("br"),a("span",{staticClass:"line-number"},[t._v("15")]),a("br"),a("span",{staticClass:"line-number"},[t._v("16")]),a("br"),a("span",{staticClass:"line-number"},[t._v("17")]),a("br"),a("span",{staticClass:"line-number"},[t._v("18")]),a("br"),a("span",{staticClass:"line-number"},[t._v("19")]),a("br")])]),a("h3",{attrs:{id:"_2-example-projects"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_2-example-projects"}},[t._v("#")]),t._v(" 2. Example projects")]),t._v(" "),a("p",[t._v("We've made a few skeletons with preconfigured Nettrine nad Contributte packages.")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"https://github.com/contributte/webapp-skeleton",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/contributte/webapp-skeleton"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("a",{attrs:{href:"https://github.com/contributte/apitte-skeleton",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/contributte/apitte-skeleton"),a("OutboundLink")],1)])]),t._v(" "),a("h3",{attrs:{id:"_3-example-playground"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#_3-example-playground"}},[t._v("#")]),t._v(" 3. Example playground")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"https://github.com/contributte/playground",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/contributte/playground"),a("OutboundLink")],1),t._v(" (playground)")]),t._v(" "),a("li",[a("a",{attrs:{href:"https://contributte.org/examples.html",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://contributte.org/examples.html"),a("OutboundLink")],1),t._v(" (more examples)")])]),t._v(" "),a("h2",{attrs:{id:"other"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#other"}},[t._v("#")]),t._v(" Other")]),t._v(" "),a("p",[t._v("This repository is inspired by these packages.")]),t._v(" "),a("ul",[a("li",[a("a",{attrs:{href:"https://github.com/doctrine",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/doctrine"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("a",{attrs:{href:"https://gitlab.com/Kdyby/Doctrine",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://gitlab.com/Kdyby/Doctrine"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("a",{attrs:{href:"https://gitlab.com/etten/doctrine",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://gitlab.com/etten/doctrine"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("a",{attrs:{href:"https://github.com/DTForce/nette-doctrine",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/DTForce/nette-doctrine"),a("OutboundLink")],1)]),t._v(" "),a("li",[a("a",{attrs:{href:"https://github.com/portiny/doctrine",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/portiny/doctrine"),a("OutboundLink")],1)])]),t._v(" "),a("p",[t._v("Thank you guys.")])])}),[],!1,null,null,null);s.default=n.exports}}]);