我希望我的网站上的翻译在找不到翻译时回退到英语。怎么做?
我知道有 2 种方法,但目前还不清楚哪些应该与 Rails 5 一起使用,哪些已经被弃用:
## config/appplication.rb
# 1
config.i18n.fallbacks = [:de, :fr, :en]
# 2
config.i18n.fallbacks = true
Run Code Online (Sandbox Code Playgroud)
文档中也没有任何相关内容。
我有一个Mojo应用程序.我有一个"a"标签的URL列表.我想无论是添加一些查询参数到每个人,或者如果他们在URL已经存在修改它现有的查询参数.URL的其余部分必须保持不变.我是这样做的:
$doc->find('a')->each(sub {
my $aTag = $_;
my $aUrl = Mojo::URL->new($aTag->attr('href'));
my $newUrl = $aUrl->query->merge('q_key1' => 'something', 'q_key2' => 'something2'); # <--- warn: returns only the query part, removes the "path" part
$_->attr('href' => $newUrl->to_string);
});
Run Code Online (Sandbox Code Playgroud)
问题是它只返回查询部分,并在存在时删除"路径"部分.
虽然我想要所有这些:路径,域,原型等... - 我只想添加/修改查询部分,只有"q_key1"和"q_key1"参数.
我怎样才能做到这一点?
我正在使用库十进制。
如果我有一个浮点十进制:
pry(4)> a1
#Decimal<179.4>
Run Code Online (Sandbox Code Playgroud)
如何转换为十进制整数或 Elixir 整数?我想我应该使用圆形。
pry(5)> Decimal.round a1, 2
#Decimal<179.40> # <--- still float
Run Code Online (Sandbox Code Playgroud)
但这不起作用。
我希望能够选择:向上或向下舍入。即 179 或 180。
我知道
Decimal.set_context(%Decimal.Context{Decimal.get_context | rounding: :floor})
Run Code Online (Sandbox Code Playgroud)
但我不知道如何在这里应用它。
在我的控制器/动作中,我有一些零值
def my_action
@var1 = get_boolean_value || nil
@var2 = get_int_value || nil
@var3 = get_string_value || nil
# there many more, any one can happen to be nil
end
Run Code Online (Sandbox Code Playgroud)
当我在视图中创建JSON对象时,nil值将呈现为空白空间:
:javascript
window.MyObj = {
var1: #{@var1},
var2: #{@var1},
var2: #{@var3}
}
Run Code Online (Sandbox Code Playgroud)
问题是,当值为nil时,它将呈现为空白空间,而不是nil本身.
:javascript
window.MyObj = {
var1: ,
var2: 33,
var2:
}
Run Code Online (Sandbox Code Playgroud)
怎么治愈呢?