我有一個叫做Users的模塊,它允許我創建用戶。但是,我也有一個名爲Profiles的模型。它與用戶不同,但每當我創建一個新用戶時,我想添加一個新的配置文件。另外,我想在配置文件表中添加兩個字段,在用戶窗體中可用。你們有沒有想過在Symfony中如何做到這一點?Symfony 1.4和在一個表單上編輯/創建多個模型?
0
A
回答
0
看看sfdoctrineapply他們幾乎完全符合你的要求。
或詳細
#schema for the profile
sfGuardUserProfile:
tableName: sf_guard_user_profile
columns:
id:
type: integer(4)
primary: true
autoincrement: true
user_id:
type: integer(4)
notnull: true
email:
type: string(80)
fullname:
type: string(80)
validate:
type: string(17)
# Don't forget this!
relations:
User:
class: sfGuardUser
foreign: id
local: user_id
type: one
onDelete: cascade
foreignType: one
foreignAlias: Profile
,並在您的表單,您創建用戶:
public function doSave($con = null)
{
$user = new sfGuardUser();
$user->setUsername($this->getValue('username'));
$user->setPassword($this->getValue('password'));
// They must confirm their account first
$user->setIsActive(false);
$user->save();
$this->userId = $user->getId();
return parent::doSave($con);
}
0
首先你必須創建表單文件夾中的自定義表單。在此表單中添加創建用戶所需的所有字段。然後,你必須改變你的processForm方法(或者你可以做到這一點,顯示形式瓶暗示方法內)
protected function processForm(sfWebRequest $request, sfForm $form){
$form->bind($request->getParameter('registration'));
if ($form->isValid())
{
$user= new sfGuardUser();
$user->setUsername($form->getValue('username'));
$user->setPassword($form->getValue('password'));
$user->setIsActive(true);
$user->save();
$profile= new sfGuardUserProfile();
$profile->setUserId($user->getId());
$profile->setName($form->getValue('nombre'));
$profile->setSurname($form->getValue('apellidos'));
$profile->setMail($form->getValue('username'));
$profile->save();
$this->redirect('@user_home');
}
}
0
相關問題
- 1. CakePHP - 創建一個表單,編輯同一模型的多行
- 2. 編輯幾個領域在一個表中的Symfony 1.4
- 3. Django的 - 創建表單編輯模型的多個實例
- 4. Symfony 1.4:關於一個新表/模塊
- 5. Symfony 1.4教條創建表
- 6. 一個表單和多個模型
- 7. Symfony:多個模型的單一視圖
- 8. MVC EditorFor一個頁面上的多個編輯表單的模型綁定
- 9. CakePHP 2.4中的同一模型的多個編輯表單
- 10. 從一個模型創建多個表單
- 11. CakePhp:創建一個包含多個模型信息的表單
- 12. Rails:創建和編輯多個資源的表單
- 13. 創建一個表單中的Symfony
- 14. Django Admin一次編輯多個模型
- 15. 創建一個編輯器模板
- 16. 相同的自定義表單編輯和創建頁面symfony
- 17. 複製在symfony的模型到另一個數據庫1.4
- 18. 在CakePHP中從一個模型創建多個模型
- 19. 用一種形式創建具有多個模型的可編輯模板
- 20. 在一個模型中創建多個表ASP.Net MVC 4
- 21. 如何在單個剃刀視圖中編輯多個模型
- 22. 動態創建一個可編輯表
- 23. 創建一個可編輯的HTML表
- 24. 在多個視圖中編輯模型
- 25. 在多個視圖中編輯模型
- 26. 在另一個視圖頁上編輯一個模型 - ASP.NET MVC
- 27. 使用編輯模式創建表單
- 28. symfony的1.4 - 理論 - 在模型模式
- 29. 的Symfony 1.4學說:多個連接到一個表
- 30. 如何在symfony中使用多種表單類型創建一個帶有數據類的單一表單