Nếu tôi có một thẻ <%= yield %>
thì tất cả các chế độ xem của tôi sẽ hiển thị ở cùng một vị trí trong bố cục. Tôi có thể có các thẻ <%= yield %>
khác nhau cho các chế độ xem khác nhau không? Vậy làm thế nào để tôi làm điều này? Cảm ơnRuby on rails: Hiển thị các chế độ xem cụ thể ở một vị trí cụ thể trong bố cục
Trả lời
Nhìn vào ActionView::Helpers::CaptureHelper. Bạn có thể làm một cái gì đó như thế này trong quan điểm của bạn:
<% content_for :sidebar do %>
<!-- sidebar content specific to this page -->
<% end %>
này sẽ chạy mẫu bên trong khối content_for, nhưng sẽ không ra như một phần của thường xuyên mẫu yield
đệm, nó sẽ được lưu trữ trong một bộ đệm riêng cho sau này . Rồi sau này, kể cả trong bố trí, bạn có thể sử dụng yield :content_name
để sản xuất các nội dung:
<div class="content">
<%= yield %>
</div>
<div class="sidebar">
<%= yield :sidebar %>
</div>
Vì vậy, trong một cảm giác bạn có thể có khác nhau yield
s cho quan điểm khác nhau, bạn chỉ cần cung cấp cho các nội dung khác nhau một tên với content_for
trong các chế độ xem và cho nó có cùng tên đó trong bố cục.
Cân nhắc trường hợp của bạn, nơi bạn muốn có các chế độ xem khác nhau ở những nơi khác nhau. Giả sử bạn có ba bảng, panel1, panel2 và panel3. Bạn có thể thực hiện việc này trong bố cục của mình:
<div id="panel1"><%= yield :panel1 %></div>
<div id="panel2"><%= yield :panel2 %></div>
<div id="panel3"><%= yield :panel3 %></div>
Bạn thậm chí không cần bao gồm đồng bằng <%= yield %>
nếu bạn không muốn. Sau đó, trong chế độ xem của bạn, bạn có thể chọn bảng để hiển thị nội dung bằng cách bao quanh toàn bộ chế độ xem với content_for
thích hợp. Ví dụ, một trong những quan điểm của bạn có thể được thay đổi như thế này:
<% content_for :panel2 do %>
<!-- Your View -->
<% end %>
Để hiển thị trong bảng 2. Một số khác có thể được dành cho bảng 3, như thế này:
<% content_for :panel3 do %>
<!-- Your View -->
<% end %>
Điều này phù hợp cho tiêu đề trang, nơi bạn muốn tùy chỉnh hầu hết trang Egbert, nhưng bạn phải chỉ định nó trong mọi trang. Điều đó làm cho nó không tốt cho các công cụ như ẩn sidebars trên các trang xác thực mà thôi. – ahnbizcad
Có, bạn có thể có nhiều thẻ <%= yield %>
. Bạn có thể chỉ định từng thẻ yield
với các tên như vậy trong chế độ xem cơ sở.
<%= yield :head %>
<%= yield :footer %>
Sau đó, sử dụng thẻ content_for
trong quan điểm cá nhân của bạn.
<% content_for :head do %>
<%= stylesheet_link_tag 'custom' %>
<% end %>
Bạn có thể sử dụng năng suất và nội dung cho:
For example:
<%= yield :head %>
<% content_for :head do %>
<title>A simple page</title>
<% end %>
- tham khảo: layout and rendering guide.
- 1. Ruby on Rails - hiển thị bố cục
- 2. Android: Vẽ lại chế độ xem cụ thể bên trong bố cục
- 3. Công cụ báo cáo Ruby on Rails?
- 4. Cuộn UITableView đến vị trí cụ thể
- 5. Ruby on Rails: có điều kiện hiển thị một phần
- 6. Chế độ xem hiển thị ở chế độ xem cuộn trên màn hình
- 7. Android - PopupWindow phía trên một chế độ xem cụ thể
- 8. Làm cách nào để đảm bảo hiển thị chế độ xem cụ thể khi bàn phím xuất hiện?
- 9. Không thể làm cho chế độ xem con rộng hơn bố mẹ trong Bố cục Android
- 10. bố cục Android có chế độ hiển thị GONE
- 11. Giới hạn các ký tự/từ trong chế độ xem - ruby on rails
- 12. Bố cục Android: yếu tố vị trí bên dưới chế độ xem thấp nhất
- 13. Get màu ở vị trí cụ thể trên dốc
- 14. đường ray: hiển thị một tập hợp các mô hình bằng cách sử dụng chế độ xem html cụ thể
- 15. Logging trong Ruby on Rails trong sản xuất Chế độ
- 16. Vị trí hiển thị mẫu trong Symfony2
- 17. Xác định bố trí cho các bộ điều khiển nhất định trong Ruby on Rails
- 18. Thêm chế độ xem trên phối cảnh trong thư mục cụ thể
- 19. Hiển thị chế độ xem từ chế độ không xem/chế độ xem trong mvvmcross
- 20. Chuyển vị trí của Chế độ xem của Chế độ xem sang vị trí màn hình HTML của WebView
- 21. Chế độ xem sẽ biết bố cục nào sẽ sử dụng? Vị trí mặc định ở đâu?
- 22. Làm cách nào để triển khai Điều hướng theo từng phần cụ thể trong Ruby on Rails?
- 23. C# cách hiển thị biểu mẫu tại vị trí chuột cụ thể trên màn hình?
- 24. Trong Vim, bạn có thể hiển thị chú giải công cụ ở vị trí con trỏ không?
- 25. Phiên bản xem di động cho Ruby on Rails
- 26. emacs: mở tất cả các tệp .txt trong một thư mục cụ thể trong một chế độ chính cụ thể
- 27. Hiển thị giờ địa phương ở chế độ xem
- 28. Thêm một hàng mới ở vị trí cụ thể trong một dataframe
- 29. Lưu đồ thị MATLAB ở độ phân giải cụ thể
- 30. Ruby on Rails: Tìm bản ghi có giá trị thấp nhất của một cột cụ thể
Có quan trọng đối với thư mục mà chế độ xem có nội dung không? Điều gì về bộ điều khiển xem là từ đâu? – holaSenor