加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在Symfony中使用Doctrine创建表

发布时间:2020-12-13 22:45:15 所属栏目:PHP教程 来源:网络整理
导读:在 MySQL中创建了“motor”DB之后,我使用以下命令在Symfony中配置了数据库: $php symfony configure:database "mysql:host=localhost;dbname=motor" root mypassword 在appname / config / doctrine /下我有一个schema.yml文件. 在这个文件中我定义了下表:
在 MySQL中创建了“motor”DB之后,我使用以下命令在Symfony中配置了数据库:

$php symfony configure:database "mysql:host=localhost;dbname=motor" root <mypassword>

在appname / config / doctrine /下我有一个schema.yml文件.

在这个文件中我定义了下表:

Car:
  actAs: { Timestampable: ~ }
  columns: 
    brand: { type: string(255),notnull: true }
    model: { type: string(255),notnull: true }
    version: { type: string(255),notnull: true }
    url: { type: string(255),notnull: true }
    year: { type: string(4),notnull: true }
    info: { type: string(10000),notnull: true }
    updated_at: { type: timestamp,notnull: true }
    created_at: { type: timestamp,notnull: true }

然后我执行了命令:

$php symfony doctrine:build --model

这给了我以下输出:

>> doctrine  generating model classes
>> file+     /tmp/doctrine_schema_57936.yml
>> tokens    /home/username/webapps/www/appname/lib/model/doctrine/CarTable.class.php
>> tokens    /home/username/webapps/www/appname/lib/model/doctrine/Car.class.php
>> tokens    /home/username/webapps/www/appname/lib/model/doctrine/base/BaseCar.class.php
>> autoload  Resetting application autoloaders
>> file-     /home/username/webapps/www/appname/cache/frontend/dev/config/config_autoload.yml.php

之后我继续用这个命令生成sql:

$php symfony doctrine:build --sql

输出是:

>> doctrine  generating model classes
>> file+     /tmp/doctrine_schema_89541.yml
>> tokens    /home/username/webapps/www/motor/lib/model/doctrine/base/BaseCar.class.php
>> autoload  Resetting application autoloaders
>> file-     /home/username/webapps/www/motor/cache/frontend/dev/config/config_autoload.yml.php
>> doctrine  generating sql for models
>> doctrine  Generated SQL successfully for models

但是在appname / data / sql /下生成的schema.sql文件为空.

所以这个命令$php symfony doctrine:insert-sql,没有在我的DB中生成任何表.但是它给出了一个成功的消息输出:

>> doctrine  creating tables
>> doctrine  created tables successfully

命令$php symfony doctrine:build –all,也没用.

知道我可能做错了吗?

解决方法

似乎我使用的方法没有任何问题.

问题出现在我使用的Symfony版本中,由于某种原因,该版本无法正常工作.

为了解决这个问题,我下载了最新的Symfony 1.4.18版本并再次运行代码,这次它运行正常.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读