2013-05-30 38 views

Trả lời

9

Tôi giả sử bạn muốn bao gồm một hình ảnh tĩnh, và kể từ khi bạn đang nói về Scala, tôi giả sử bạn đang sử dụng Chơi Framework 2 .

Vị trí thích hợp của hình ảnh trong bố cục dự án tiêu chuẩn phải là public/images/friend_request.png. Sau đó bạn có thể tham khảo hình ảnh:

<img src="@routes.Assets.at("images/friend_request.png")" width="28" height="22" /> 

Để biết thêm thông tin về tài sản (thời gian bộ nhớ đệm, vv), vui lòng tham khảo Play Framework documentation.

+0

thanx..for trả lời .. Và một câu hỏi khác đường dẫn hình ảnh từ cơ sở dữ liệu và hiển thị trong trang xem là nó có thể –

+0

@ user2400597 Bạn muốn hiển thị hình ảnh bạn lưu trữ trong cơ sở dữ liệu? Chỉ cần tạo một bộ điều khiển (mà đọc dữ liệu và trả về nó; nhớ loại mime chính xác) và thêm một tuyến đường vào nó. Sau đó, nhúng chúng bằng cách sử dụng bộ định tuyến ngược lại (ví dụ: '@ routes.Images.display'). – Skyr

3

Skyr's answer không hoạt động đối với phiên bản Play của tôi (2.4.2). Sử dụng nó mang lại những lỗi biên dịch sau:

value at is not a member of controllers.ReverseAssets

Sau khi có ý kiến ​​của documentation, điều này làm việc cho tôi:

<img src="@routes.Assets.versioned("images/yourImage.png")"> 

nơi yourImage.png là trong public/images.


Nếu bạn muốn tăng tốc độ tải trang qua bộ nhớ đệm và nén hình ảnh của bạn (và tất cả các tài sản khác của ứng dụng web của bạn), hãy thử này:

Hãy chắc chắn rằng plugins.sbt của bạn có chứa những mục:

addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.7") 
addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.1.0") 
addSbtPlugin("com.typesafe.sbt" % "sbt-gzip" % "1.0.0") 

Sau đó, trong build.sbt của bạn, thêm này:

// Apply RequireJS optimizations, create a checksum, and zip each asset 
pipelineStages := Seq(rjs, digest, gzip) 
Các vấn đề liên quan