2013-05-28 18 views
6

我正在復活一個已停機幾年的網站,並將所有內容遷移到Symfony2。我能夠將所有舊用戶數據庫條目放入fos_user表中。唯一的問題是salt和confirmation_token條目是空的,因爲用戶不是以標準方式創建的。我希望所有用戶都重置密碼,所以我根本不擔心舊密碼。我如何一次爲13,000個用戶生成條目?也許我需要重寫控制器以在每次請求密碼時創建salt和confirmation_token?方法已經存在嗎?看起來其他人以前會遇到這個問題。如何使用FOSUserBundle爲已遷移用戶生成salt和confirmation_token條目

感謝

回答

9

我通過重寫fosUserBundle復位控制器解決了這個。 Instructions can be found here

我不得不生成新托克的這些行:

$tokenGenerator = $this->container->get('fos_user.util.token_generator'); 
$user->setConfirmationToken($tokenGenerator->generateToken()); 

我可以用一個簡單的SQL查詢來生成鹽值。

UPDATE fos_user set salt = SUBSTRING(MD5(RAND()) FROM 1 FOR 31) WHERE salt IS NULL 
+1

您的鏈接已刪除。你可以更新嗎?謝謝! :) – Alec

+0

說明現在在這裏:http://symfony.com/doc/current/bundles/FOSUserBundle/overriding_controllers.html – rooter

相關問題