Symfony CMF数据库架构

时间:2013-12-22 11:30:30

标签: php mysql symfony symfony-cmf doctrine-phpcr

我已经开始研究Symfony CMF,我必须说它看起来不错! 但是,我无法理解数据库Schema!我已经阅读了PHPCR的基础知识,并在一定程度上理解它。令我困惑的是Symfony CMF安装的所有额外表。即

  • phpcr_binarydata
  • phpcr_internal_index_types
  • phpcr_namespaces
  • phpcr_nodes
  • phpcr_nodes_references
  • phpcr_nodes_weakreferences
  • phpcr_type_childs
  • phpcr_type_nodes
  • phpcr_type_props
  • phpcr_workspaces

这些用于什么?我能理解的唯一表是phpcr_nodes和存储的XML /属性数据!有些表有数据并且正在查询 - 但我在phpcr_nodes中看不到对它们的任何引用!

例如:

表“phpcr_type_nodes”包含

等数据

name:phpcr:managed 超类型:nt:base

表“phpcr_type_props”包含

等数据

名称:copyright

1 个答案:

答案 0 :(得分:0)

当您看到此架构时,这意味着您正在使用Jackalope Doctrine DBAL,这是PHPCR API的一种可能实现。这在关系数据库之上实现PHPCR。不幸的是,没有太多可用的文档,但所有这些表都被使用。

如果您想了解有关PHPCR的更多信息,我建议您查看此PHPCR Tutorial。如果您真的想要详细了解数据库架构,则需要深入了解Hackalope Doctrine DBAL的源代码。

请注意,您还可以将doctrine ORM与CMF一起使用。 RoutingBundle已经为它带来了映射,对于其他bundle来说,它可以实现ORM映射,我们很乐意为它做贡献。

PS:我从未弄清楚如何在stackoverflow上发出初始通知后收到通知,因此如果您需要更多信息,最好在相关的github存储库上打开一个问题。