我正嘗試在我的模式中使用單個表格動態添加嵌入表單。動態嵌入表格
什麼,我的意思是,在我的sfGuardUserProfile
表,我有無數的字段,以確定用戶是什麼,即practice_id,nurse_id,記住patient_id
所以,就這樣,我試圖動態地添加護士進行實踐。
我有一個練習形式,它擴展了sfGuardUserAdminForm
,它擴展了sfGuardUser
,這是我可以獲得存儲在sfGuardUser
表中的用戶名,密碼等。
在我的practiceForm
我嵌入一個practiceProfileform
,它顯示我需要從sfGuardUserProfile
表中的字段。我希望每個人都在...
這工作正常,我看到兩個表中的字段。
現在,我現在不確定該怎麼做:嵌入護士。我特別不確定如何做到這一點,因爲這些做法和護士將被保存在同一張桌子上。
practiceForm
class Practiceform extends sfGuardUserAdminForm
{
public function configure()
{
$form = new PracticeProfileForm($this->getObject()->getProfile());
$this->embedForm('profile', $form);
}
}
我也有一個nurseForm,再次延長sfGuardUser
,嵌入了nurseProfileForm,延伸sfGuardUserProfile
得到我需要的字段。
nurseForm
class dentistForm extends sfGuardUserAdminForm
{
public function configure()
{
$profileForm = new nurseProfileForm($this->object->Profile);
$this->embedForm('profile', $profileForm);
{
}
我的schema.yml如下:
sfGuardUserProfile:
actAs:
Timestampable: ~
columns:
user_id:
type: integer(11)
notnull: true
default:
unsigned: false
primary: false
unique: false
autoincrement: false
email_new:
type: string(255)
unique: true
firstname:
type: string(255)
lastname:
type: string(255)
practice_id:
type: integer(11)
nurse_name:
type: varchar(255)
practice_name:
type: varchar(255)
practice_type:
type: varchar(255)
validate_at:
type: timestamp
validate:
type: string(33)
relations:
User:
class: sfGuardUser
foreign: id
local: user_id
type: one
onDelete: cascade
foreignType: one
foreignAlias: Profile
Practice:
class: sfGuardUserProfile
foreign: id
local: practice_id
type: one
onDelete: cascade
indexes:
validate:
fields: [validate]
有沒有一種簡單的方法來實現與模式/形態我目前動態地將這些護士有使用Doctrine/SF1.4?
梅奈謝謝