2013-03-04 22 views
5

Đây là tôi mẫu:Làm thế nào tôi nên xử lý đầu ra html tạo ra trong ứng dụng Google Play 2 của tôi bằng cách helper mặc định hoặc twitterBootstrap helper

@(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> 
    } 
} 

Khi sử dụng thường xuyên @import helper._ html tạo ra trong ứng dụng của tôi trông giống như ví dụ trong tài liệu hướng dẫn chơi 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> 

Nếu tôi sử dụng @import helper.twitterBootstrap._ nó trông giống như:

<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> 

Tôi không sử dụng các loại dd hml thực hiện và twitter thứ bootstrap trông giống như cấu trúc Tôi đã từng làm việc withm nhưng tôi không quan tâm đến việc thực hiện js bootstrap và css. Vì vậy, câu hỏi của tôi là suy nghĩ của bạn về điều này là gì. Bạn đã sử dụng cái gì? Có lẽ bạn sử dụng triển khai của riêng bạn để hiển thị html?

Trả lời

1

Bạn nên tạo hàm tạo trường riêng của mình để chỉ định kiểu hiển thị của bạn.

Nhìn vào tài liệu chính thức ở đây cho "Viết riêng constructor của bạn" phần:

http://www.playframework.com/documentation/2.1.0/ScalaFormHelpers

Do đó, thay vì nhập khẩu cơ bản helpers._ hoặc lĩnh vực bootstrap mặc định constructor helper.twitterBootstrap._, bạn sẽ import MyOwnHelpers._ Tham kh¶o mẫu của bạn.

Toàn bộ là cũng giải thích trong doc :)

Để biết thêm thông tin, đây là một ví dụ về một nhà xây dựng lĩnh vực tôi đã tạo: Tất nhiên, bạn có thể tự do không sử dụng boostrap, tôi chính xác. Trong trường hợp của tôi, tôi đã làm.

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> 

và nhập khẩu của mình trong lo lắng xx.scala.html tập tin của tôi:

@implicitFieldConstructor = @{ FieldConstructor(twitterBoostrapInput.f) } 
Các vấn đề liên quan