我需要根据光模板语言/脚本动态生成输入表单。
以下是示例:
{Name} has not been doing well in class. Please come see us by {due_date:Date}.
我需要从中产生什么:
<input type='text' name='Name' id='Name' />
<input type='text' name='due-date' id='due_date' class='date' />
正如标题所说,我认为最好的方法是编写一个html助手,可以接受我的模板字符串/对象并生成所需的html,但我不知道从哪里开始,因为我仍然新的铁路。我上次使用XAML / WPF实现它,但在rails中没有任何线索。
所以我有两个问题,我应该为每个模板创建一个对象吗?如果是这样,考虑到它们只是作为字符串存在,我应该如何以及在哪里做到这一点?
第二,任何人都可以提供一个起点来学习如何创建自己的html表单助手吗?
谢谢!
答案 0 :(得分:0)
我倾向于为模板创建一个模型,即使它只是一个字符串,因为你有一些围绕它的业务逻辑。然后我会使用一个演示者来使用类似caching_presenter之类的东西来创建表单(尽管即使只是普通的Ruby类或辅助函数也可以)。我留给你的转换的实现,但我会看一下String#match与正则表达式作为起点。
最简单的帮助程序只是辅助模块中的方法,它返回模板插入视图的字符串。封锁助手有点复杂,但Rails Guide就此问题是开展研究的好地方。