Я пытаюсь динамически добавлять формы встраивания, используя одну таблицу в моей схеме.
Что я имею в виду под этим, в моей таблице 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?
Манай спасибо