如何将视图助手与 ruby​​-ejs 一起使用

发布于 2024-12-28 08:08:31 字数 263 浏览 0 评论 0原文

我有一个 Rails 应用程序,它使用 ruby​​-ejs gem 来编译 js 模板,然后在我的主干视图中使用它。

我想使用一些视图助手在我的模板中创建表单元素,例如选择标签。我在此处找到了一些 EmbeddedJS View Helpers,但我不知道如何去做在我的模板中使用它们。

这可能吗?

I have a rails app that's using the ruby-ejs gem to compile js templates which I am then using in my backbone views.

I would like to use some view helpers to create form elements, such as select tags, within my templates. I found some EmbeddedJS View Helpers here but I don't know how to go about using them in my templates.

Is this possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

逆光飞翔i 2025-01-04 08:08:31

事实证明这并不像我想象的那么困难。

我只是在 此处 中包含了来自 EmbeddedJS 项目的 ejs.js 和 view.js 文件,并且我能够使用 select_tag 帮助器使用完整的命名空间。

<%= EJS.Helpers.prototype.select_tag('example', selected_value, choices) %>

可能有更好的方法来访问辅助方法。一旦我弄清楚了,我就会发布更新。

Turns out this was not as difficult as I thought.

I simply included the ejs.js and view.js files from the EmbeddedJS project here and I was able to use the select_tag helper using the full namespace.

<%= EJS.Helpers.prototype.select_tag('example', selected_value, choices) %>

There's probably a better way to access the helper method. I'll post an update once I figure that out.

遗弃M 2025-01-04 08:08:31

如果您使用的是express,我建议您使用我的ejs视图助手版本 https://github.com/tanema/ express-helpers

你可以像这样初始化它们,

var helpers = require('express-helpers')(app);

然后在你的 ejs 视图中使用这样的 select 标签

<% 
    var choices = [ 
            {value: 1,text: 'First Choice' }, 
            {value: 2,text: 'Second Choice'},
            {value: 3,text: 'Third Choice'}  
        ]
%>
<%= select_tag('mySelectElement', 2,  choices) %>

,它会创建:

< select id='mySelectElement' value='2' name='mySelectElement'>
    < option value='1' >First Choice</option>
    < option value='2' selected='selected'>Second Choice</option>
    < option value='3'>Third Choice</option>
< /select>

if you are using express I recommend you use my version of ejs view helpers https://github.com/tanema/express-helpers

you can initialize them like this

var helpers = require('express-helpers')(app);

then in your ejs view use the select tag like this

<% 
    var choices = [ 
            {value: 1,text: 'First Choice' }, 
            {value: 2,text: 'Second Choice'},
            {value: 3,text: 'Third Choice'}  
        ]
%>
<%= select_tag('mySelectElement', 2,  choices) %>

which creates:

< select id='mySelectElement' value='2' name='mySelectElement'>
    < option value='1' >First Choice</option>
    < option value='2' selected='selected'>Second Choice</option>
    < option value='3'>Third Choice</option>
< /select>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文