Question

I need to migrate sfGuard to FOSUserBundle. I have problem with database structure. My old user table create query:

CREATE TABLE `sf_guard_user` (
    `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
    `first_name` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci',
    `last_name` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci',
    `email_address` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `username` VARCHAR(128) NOT NULL COLLATE 'utf8_unicode_ci',
    `algorithm` VARCHAR(128) NOT NULL COLLATE 'utf8_unicode_ci',
    `salt` VARCHAR(128) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci',
    `password` VARCHAR(128) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci',
    `is_active` TINYINT(1) NULL DEFAULT NULL,
    `is_super_admin` TINYINT(1) NULL DEFAULT NULL,
    `last_login` DATETIME NULL DEFAULT NULL,
    `created_at` DATETIME NOT NULL,
    `updated_at` DATETIME NOT NULL,
    PRIMARY KEY (`id`),
    UNIQUE INDEX `email_address` (`email_address`),
    UNIQUE INDEX `username` (`username`),
    INDEX `is_active_idx_idx` (`is_active`)
)
COLLATE='utf8_unicode_ci'
ENGINE=InnoDB

I went through this tutorial https://www.youtube.com/watch?v=ZvLUvOaW_XY and I have working login system but it use this table:

CREATE TABLE `fos_user` (
    `id` INT(11) NOT NULL AUTO_INCREMENT,
    `username` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `username_canonical` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `email` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `email_canonical` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `enabled` TINYINT(1) NOT NULL,
    `salt` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `password` VARCHAR(255) NOT NULL COLLATE 'utf8_unicode_ci',
    `last_login` DATETIME NULL DEFAULT NULL,
    `locked` TINYINT(1) NOT NULL,
    `expired` TINYINT(1) NOT NULL,
    `expires_at` DATETIME NULL DEFAULT NULL,
    `confirmation_token` VARCHAR(255) NULL DEFAULT NULL COLLATE 'utf8_unicode_ci',
    `password_requested_at` DATETIME NULL DEFAULT NULL,
    `roles` LONGTEXT NOT NULL COMMENT '(DC2Type:array)' COLLATE 'utf8_unicode_ci',
    `credentials_expired` TINYINT(1) NOT NULL,
    `credentials_expire_at` DATETIME NULL DEFAULT NULL,
    PRIMARY KEY (`id`),
    UNIQUE INDEX `UNIQ_957A647992FC23A8` (`username_canonical`),
    UNIQUE INDEX `UNIQ_957A6479A0D96FBF` (`email_canonical`)
)
COLLATE='utf8_unicode_ci'
ENGINE=InnoDB

Now I must change FOSUserBundle to use my old table sf_guard_user. Where I must to start? Any idea?

Was it helpful?

Solution

I just have figured out. The answer for my question is here:

Symfony2 override User.orm.xml

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top