形式 – Rails脚手架引用选择输入和实体标签与生成器

形式 – Rails脚手架引用选择输入和实体标签与生成器,第1张

概述我正在尝试使用Rails 4来构建一个应用程序,我在使用外键,表单和实体名称时遇到了这个小问题.以下是一些细节: rails g scaffold user_type name:stringrails g scaffold user name:string pass:string user_type:references 正如您所看到的,user_type和用户之间存在简单的1:n关系.它在这种 我正在尝试使用Rails 4来构建一个应用程序,我在使用外键,表单和实体名称时遇到了这个小问题.以下是一些细节:

rails g scaffold user_type name:stringrails g scaffold user name:string pass:string user_type:references

正如您所看到的,user_type和用户之间存在简单的1:n关系.它在这种情况下产生了正确的脚手架.这是生成的表单的图像,

但是我想要的是生成器的结果是下一个形式,

因此,我想从rails g scaffold进行的第一次更改是生成至少与选择输入的e 1:n关系.此外,我正在寻找一个涉及带有标签或其他东西的模型的解决方案.我需要一个最终生成这个的脚手架命令.

Witch表示Entity user_type的name属性具有“presentation label”.

我知道我可以从头开始创建一个生成器,但我相信我在命令行中缺少一些选项,因为这个更改实际上非常小.

并且可以提出一个解决方案,包括在每个CRUD中插入正确的代码,但我打算将其用于150表数据库.有帮助吗?

解决方法 您可以通过在应用程序根目录中的lib / templates / erb / scaffold文件夹中创建备用模板来替换scaffold生成器使用的模板.

在这种情况下,您需要复制原始_form.HTML.erb模板并将文本字段替换为collection_select:

<%- if attribute.reference? -%>    <%%= f.label :<%= attribute.column_name %> %><br>-   <%%= f.<%= attribute.fIEld_type %> :<%= attribute.column_name %> %>+   <%%= f.collection_select :<%= attribute.column_name %>,<%= attribute.name.camelize %>.all,:ID,:name,prompt: true  %>  <%- else -%>

更多细节可以在my post on the subject中阅读.

总结

以上是内存溢出为你收集整理的形式 – Rails脚手架引用选择输入和实体标签与生成器全部内容,希望文章能够帮你解决形式 – Rails脚手架引用选择输入和实体标签与生成器所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1291003.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存