好吧,我有一个与on-to-many assoc相关的两个模型.
#models/outline.rb
class Outline < ActiveRecord::Base
has_many :documents
end
#models/document.rb
class Document < ActiveRecord::Base
belongs_to :outline
end
#admin/outlines.rb
ActiveAdmin.register Outline do
form do |f|
f.inputs "Details" do
f.input :name, :required => true
f.input :pages, :required => true
...
f.buttons
end
f.inputs "Document Versions" do
f.has_many :documents, :name => "Document Versions" do |d|
d.input :file, :as => :file
d.buttons do
d.commit_button :title => "Add new Document Version"
end
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
正如您在admin/outlines.rb中看到的那样,我已经尝试在has_many:documents中设置:name,在commit_button中设置:title,但这两个选项都不起作用,我也试过:legend,: title,和:label,而不是:.has_many中的名称.不工作.
这是该代码的结果: 截图
我要显示的是"文档版本"而不是"文档","添加新文档版本"而不是"添加新文档"
如果有人能有解决方案,那就太好了
我想知道是否有可能使用实体构建一个表单以一对一的关系获取所有字段.澄清:
我有一个User.php实体(包含所有明显的字段,名称,姓氏,流派等)和一个Address.php实体.我想要的是构建整个表单,而不是逐个添加Address实体的属性,并在数据库中保存适当的关系.
这是我尝试过的(我已经尝试了一点代码),但显然不是正确的方法:
用户实体:
class User implements UserInterface {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="string", length=100, nullable=TRUE)
*/
protected $firstName;
/**
* @ORM\Column(type="string", length=200)
* @Assert\NotBlank()
*/
protected $lastNames;
/**
* @ORM\OneToOne(targetEntity="Capsa\Bundle\ClubCommonBundle\Entity\Address")
*/
protected $address;
Run Code Online (Sandbox Code Playgroud)
地址类
class Address {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="string", length=100, unique=TRUE)
* @Assert\NotBlank()
*/
protected $streetName;
/**
* @ORM\Column(type="string", length=50)
*/
protected $streetNumber;
Run Code Online (Sandbox Code Playgroud)
表单构建器:
public function …Run Code Online (Sandbox Code Playgroud) 我遇到了表格和金钱宝石的问题.
这是我的问题:
如何让它以美元而非美分显示预先填充的金额?
编辑:
我尝试像这样编辑_form.html:
= f.text_field(:amount, :to_money)
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
undefined method `merge' for :to_money:Symbol
Run Code Online (Sandbox Code Playgroud) 我正在构建一个包含名为"category"的字段的表单,我需要一个选项列表来执行此操作,但我不知道如何使用存储在数据库中的几个类别填充此选项列表.
public function buildForm(FormBuilder $builder, array $options) {
$builder -> add('item', 'text', array('label' => 'Item'));
$builder -> add('category', 'choice', array(
'choices' => ???,
'label' => 'Category'
));
}
Run Code Online (Sandbox Code Playgroud)
如何从数据库中获取类别并使用它们来构建表单?(似乎无法访问$ this-> getDoctrine - > ...在这个类中).
我一直试图用一个输入创建一个非常基本的symfony表单(用于搜索功能).它在提交时使用GET方法.它似乎按预期工作,但它会生成一个非常丑陋和不必要的长URL.我一直试图"清理"网址已经有一段时间了,我想知道是否有人遇到同样的问题而且知道如何修复它?
形成
$form = $this->createFormBuilder($search)
->setMethod('GET')
->add('q', 'text')
->add('search', 'submit')
->getForm();
Run Code Online (Sandbox Code Playgroud)
提交表单时会生成以下URL:
search?form[q]=red+apple&form[search]=&form[_token]=bb342d7ef928e984713d8cf3eda9a63440f973f2
Run Code Online (Sandbox Code Playgroud)
所需网址:
search?q=red+apple
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我正在尝试在特定字段上创建条件所需的验证.我尝试通过在我的函数中返回Validators.required来做到这一点,但这似乎不起作用.我该怎么做呢?这是我的代码:
private _ansat: AbstractControl = new FormControl('', Validators.required);
private _helbred: AbstractControl = new FormControl('', Validators.compose([this.useValidateIfRadio(this._ansat, 0, Validators.required)]) );
constructor(private _fb: FormBuilder) {
this.myForm = this._fb.group({
ansat: this._ansat,
helbred: this._helbred
});
}
useValidateIfRadio (c: AbstractControl, n: number, v) {
return function (control) {
return new Promise(resolve => {
// this.msg = ansatControl.value;
console.log(v);
if (c.value === n) {
resolve(v);
}
else {
resolve(null);
}
});
};
};
Run Code Online (Sandbox Code Playgroud)
任何帮助是极大的赞赏.
是否可以在Symfony 2 FormBuilder中创建一个日期输入字段,只有年选择器小部件,或者我应该使用简单的文本类型输入字段?
我formBuilder在Symfony中创建了一个表单.我使用外部样式表并引用标记ID为表单输入添加一些基本样式.表单正确呈现并正确处理信息.
但是,它会输出一个不需要的无序列表,其中包含一个包含以下文本的列表项: This form should not contain extra fields.
我很难摆脱这个通知.我想知道是否有人可以帮助我理解为什么用我的表格呈现它以及如何删除它?
提前谢谢了!
调节器
$form = $this->createFormBuilder($search)
->add('searchinput', 'text', array('label'=>false, 'required' =>false))
->add('search', 'submit')
->getForm();
$form->handleRequest($request);
Run Code Online (Sandbox Code Playgroud)
树枝输出(表格输出并正确处理
This form should not contain extra fields.
Run Code Online (Sandbox Code Playgroud)
呈现HTML
<form method="post" action="">
<div id="form">
<ul>
<li>This form should not contain extra fields.</li>
</ul>
<div>
<input type="text" id="form_searchinput" name="form[searchinput]" />
</div>
<div>
<button type="submit" id="form_search" name="form[search]">Search</button>
</div>
<input type="hidden" id="form__token" name="form[_token]" value="bb342d7ef928e984713d8cf3eda9a63440f973f2" />
</div>
</form>
Run Code Online (Sandbox Code Playgroud) 我正在使用symfony表单为我的所有用户创建一个选择框.我按全名显示它们,但想按字母顺序排序.
$builder->add('transferTo', 'document', [
'class' => 'UserBundle:User',
'property' => 'fullname',
'label' => 'Overdragen aan',
'attr' => ['class' => 'form-control selectpicker'],
'label_attr' => ['class' => 'col-sm-2 control-label'],
'multiple' => false,
'required' => true
]);
Run Code Online (Sandbox Code Playgroud)
如何在firstName的全名上按字母顺序对用户进行排序?
我想用输入数据初始化我的mat芯片输入但是当我有两个芯片时,它只形成一个形式:
*.component.ts
@Component({
selector: 'app-pps-dialog',
templateUrl: './pps-dialog.component.html',
})
export class PPSDialogComponent implements OnInit {
patientid: string;
ppsForm: FormGroup;
ppssToDisplay;
visible: boolean = true;
selectable: boolean = true;
removable: boolean = true;
addOnBlur: boolean = true;
// Enter, comma
separatorKeysCodes = [ENTER, COMMA];
constructor(
private route: ActivatedRoute,
private ppssService:PPSsService,
private _changeDetectorRef: ChangeDetectorRef,
private location: Location,
private router: Router,
public dialog: MatDialog,
private formBuilder: FormBuilder,
public dialogRef: MatDialogRef<PPSDialogComponent>,
@Inject(MAT_DIALOG_DATA) public data: any)
{ this.initForm(); }
ngOnInit(): void {
this.ppssToDisplay = this.ppssService.getSinglePPS(this.key)
.subscribe(res …Run Code Online (Sandbox Code Playgroud) formbuilder ×10
symfony ×6
forms ×4
angular ×2
activeadmin ×1
arrays ×1
currency ×1
database ×1
doctrine ×1
doctrine-orm ×1
formtastic ×1
get ×1
javascript ×1
php ×1
ruby ×1
rubygems ×1
sorting ×1
symfony1 ×1
url ×1
validation ×1