gpt4 book ai didi

css - rails : pass variable from the view to stylesheet

转载 作者:太空宇宙 更新时间:2023-11-04 12:38:39 25 4
gpt4 key购买 nike

我在我的 View 中渲染了一个部分:

<section class="about map">
<h3>Contact address</h3>
<div id="gmap">
</div>
<% content_for :address_slider_top, 50 %>
<% content_for :address_slider_left, 80 %>
<%= render partial: 'address_slider' %>
</section>

我想设置值 address_slider_topaddress_slider_left 以便我可以从 View 中决定我的部分“address_slider”在我的 css.erb 中的位置

#addresses{
width: 300px;
background-color: #fff;
height: 400px;
margin-top: <%= yield(:address_slider_top).to_s %>px;
margin-left: <%= yield(:address_slider_left).to_s %>px;
}

它给了我一个 LocalJumpError。我试过

<%= render partial: "address_slider", locals: {address_slider_top: 50, address_slider_left: 80} %>

但我也无法让它工作。

最佳答案

Assets 不是 View 。当然,HTTP 对它们的处理方式相似,但它们在本质上并不相似,并且服务于不同的目的。

大多数时候 Assets 都有一个有趣的属性:它们是静态的,它们永远不会改变。另一方面, View 是数据的表示,并且经常发生变化。

因此,Rails 有一个利用这种静态性的 Assets 管道。在开发中,为了便于调试和每次更改都重新编译, Assets 保持较大。然而,在生产中,有一个特殊的任务 rake assets:precompile 将 Assets 编译到 public 文件夹中,然后通常由反向代理服务,如 nginx 这样做很快。

因此,在 Assets 中嵌入变量的最佳做法是在 View 中呈现相关样式。它可能是用 HTML 内联编写的,它可能是呈现 CSS 的特定 View (但我从未见过有人真正这样做过)。

关于css - rails : pass variable from the view to stylesheet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27079026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com