这是我的模板:
@(smsReviewForm: Form[SmsReview], grades: Seq[Grade])
@styles = {
}
@scripts = {
}
@import mobile.mobileMain
@import helper._
@mobileMain(Messages("reco.index.title"), styles, scripts) {
<div id="header">
<p class="floatleft"><img src="@routes.Assets.at("images/mobile/general/reco.png")" alt="Reco" /></p>
<div class="clear"></div>
</div>
@helper.form(routes.Sms.submit) {
@helper.inputText(
smsReviewForm("lastname"),
'_label -> "Label",
'_id -> "lastname"
)
<div class="actions">
<input type="submit" class="btn primary" value="Submit">
</div>
}
}
当使用常规的 @import helper._ 时,我的应用中生成的 html 看起来像 play 2.1 文档中的示例:
<dl class=" " id="lastname_field">
<dt><label for="lastname">Label</label></dt>
<dd>
<input type="text" id="lastname" name="lastname" value="">
</dd>
<dd class="info">Required</dd>
</dl>
如果我使用 @import helper.twitterBootstrap._ 它看起来像:
<div class="clearfix " id="lastname_field">
<label for="lastname">Label</label>
<div class="input">
<input type="text" id="lastname" name="lastname" value="">
<span class="help-inline"></span>
<span class="help-block">Required</span>
</div>
我没有使用 dd hml 类型的实现,twitter bootstrap 的东西看起来更像我以前使用的结构,但我对实现 bootstrap js 和CSS。所以我的问题是你对此有何看法。
你用过什么?也许您使用自己的实现来进行 html 渲染?
最佳答案
您应该创建您的自己的字段构造函数,以指定您的渲染风格。
在此处查看“编写自己的构造函数”部分的官方文档:
http://www.playframework.com/documentation/2.1.0/ScalaFormHelpers
因此,不是导入基本的helpers._ 或默认的 Bootstrap 字段构造函数helper.twitterBootstrap._,而是import MyOwnHelpers._ 引用您的模板。
整体在文档中有很好的解释:)
有关更多信息,请参阅此处我创建的一个字段构造函数的示例: 当然,你可以不使用 boostrap,我很准确。就我而言,我做到了。
twitterBootstrapInput.scala.html
<div class="control-group @if(elements.hasErrors) {error}">
<label class="control-label" for="@elements.id">@elements.label</label>
<div class="controls">
@if(elements.args.contains(Symbol("data-schedule"))){
<div class="schedulepicker input-append">
@elements.input
<span class="add-on">
<i data-time-icon="icon-time" data-date-icon="icon-calendar"></i>
</span>
</div>
} else {
@elements.input
}
<span class="help-inline">@elements.errors.mkString(", ")</span>
</div>
</div>
及其在我关注的 xx.scala.html 文件中的导入:
@implicitFieldConstructor = @{ FieldConstructor(twitterBoostrapInput.f) }
关于html - 我应该如何处理默认助手或 twitterBootstrap 助手在我的 Play 2 应用程序中生成的 html 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15199605/
我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h
我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
为了将Cucumber用于命令行脚本,我按照提供的说明安装了arubagem。它在我的Gemfile中,我可以验证是否安装了正确的版本并且我已经包含了require'aruba/cucumber'在'features/env.rb'中为了确保它能正常工作,我写了以下场景:@announceScenario:Testingcucumber/arubaGivenablankslateThentheoutputfrom"ls-la"shouldcontain"drw"假设事情应该失败。它确实失败了,但失败的原因是错误的:@announceScenario:Testingcucumber/ar
我构建了两个需要相互通信和发送文件的Rails应用程序。例如,一个Rails应用程序会发送请求以查看其他应用程序数据库中的表。然后另一个应用程序将呈现该表的json并将其发回。我还希望一个应用程序将存储在其公共(public)目录中的文本文件发送到另一个应用程序的公共(public)目录。我从来没有做过这样的事情,所以我什至不知道从哪里开始。任何帮助,将不胜感激。谢谢! 最佳答案 无论Rails是什么,几乎所有Web应用程序都有您的要求,大多数现代Web应用程序都需要相互通信。但是有一个小小的理解需要你坚持下去,网站不应直接访问彼此
我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r
刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr
在我的Controller中,我通过以下方式在我的index方法中支持HTML和JSON:respond_todo|format|format.htmlformat.json{renderjson:@user}end在浏览器中拉起它时,它会自然地以HTML呈现。但是,当我对/user资源进行内容类型为application/json的curl调用时(因为它是索引方法),我仍然将HTML作为响应。如何获取JSON作为响应?我还需要说明什么? 最佳答案 您应该将.json附加到请求的url,提供的格式在routes.rb的路径中定义。这
所以我在关注Railscast,我注意到在html.erb文件中,ruby代码有一个微弱的背景高亮效果,以区别于其他代码HTML文档。我知道Ryan使用TextMate。我正在使用SublimeText3。我怎样才能达到同样的效果?谢谢! 最佳答案 为SublimeText安装ERB包。假设您安装了SublimeText包管理器*,只需点击cmd+shift+P即可获得命令菜单,然后键入installpackage并选择PackageControl:InstallPackage获取包管理器菜单。在该菜单中,键入ERB并在看到包时选择
我在理解Enumerator.new方法的工作原理时遇到了一些困难。假设文档中的示例:fib=Enumerator.newdo|y|a=b=1loopdoy[1,1,2,3,5,8,13,21,34,55]循环中断条件在哪里,它如何知道循环应该迭代多少次(因为它没有任何明确的中断条件并且看起来像无限循环)? 最佳答案 Enumerator使用Fibers在内部。您的示例等效于:require'fiber'fiber=Fiber.newdoa=b=1loopdoFiber.yieldaa,b=b,a+bendend10.times.m
我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R