小编dyl*_*jha的帖子

把手帮助i18n

如果我使用内置帮助器的Ember.js input

{{input value=query class="form-input" placeholder="Search"}}
Run Code Online (Sandbox Code Playgroud)

我想用该字符串的翻译版本替换占位符字符串"Search".

通常,如果我还没有使用input帮助器,我会像这样访问翻译后的字符串:

{{ t "home.search" }}
Run Code Online (Sandbox Code Playgroud)

internationalization ember.js ember-i18n

3
推荐指数
1
解决办法
1926
查看次数

替换长生不老药中数组中的项目

假设我有一张看起来像这样的地图

一个组织具有一组属性,而这些属性具有一组“ access_tokens”

organization = %{
  name: "Org",
  properties: [
    %{
      name: "prop1",
      access_tokens: [%{id: "at-1", name: "one-1"}, %{id: "at-2", name: "one-2"}]
    },
    %{
      name: "prop2",
      access_tokens: [%{id: "at-3", name: "two-1"}, %{id: "at-4", name: "two-2"}]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

现在,我有了此映射,对于一个特定的访问令牌,此映射的ID与2nd属性的访问令牌之一匹配:

access_token = %{id: "at-3", name: "new name"}
Run Code Online (Sandbox Code Playgroud)

迭代organization%{}使用新的访问令牌更新地图的最佳方法是什么?我要做的是找到基于进行匹配的访问令牌,id并将其替换为具有新名称的新令牌。

我有一些绕行的方式来做到这一点,但是在Elixir中这样做是一种干净的方式。

elixir

1
推荐指数
1
解决办法
45
查看次数

AJAX与Rails 3.2一起提交表单

这是我的表单,它工作正常,但现在我想要AJAX它.

<%= form_tag variant_path(variant.id), :method => :put, :class => 'update_inv_form' do %>  
  <%= text_field_tag :inventory_quantity, variant.inventory_quantity %>
  <%= submit_tag 'Update'  %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

当我添加了:遥控=> true属性的形式通过AJAX成功提交(我可以看到它发生在服务器上,我可以看到的变化,当我刷新页面).我想正确更新视图以显示更改而不刷新页面.这是我的更新操作:(请注意,我在这里不使用ActiveRecord模型.)

def update
  variant = ShopifyAPI::Variant.find(params[:id])
  variant.inventory_quantity = params[:inventory_quantity]
  variant.save
  redirect_to root_path
end
Run Code Online (Sandbox Code Playgroud)

更新 感谢您帮助我解决这个问题的答案结果解决方案正如他所说,但是我遇到了一个小问题.我想要更新的视图生活在app/views/home/index.html.erb ,我正在处理这个:Variants #update.(变种控制器,更新动作)

我把我的update.js.html放在我的视图所在的同一目录中:app/views/home我的服务器抛出了500错误:缺少模板.事实证明,我必须创建一个app/views/variants/目录并将update.js.html文件放在那里.问题解决了.

jquery shopify ruby-on-rails-3

0
推荐指数
1
解决办法
1786
查看次数

更新谷歌地图标记而不重建地图

我正在使用google maps api,如下所示:

this.init_map = function(lat, lng){
var mapOptions = {
  center: new google.maps.LatLng(lat, lng),
  zoom: 17,
  mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

var marker = new google.maps.Marker({
  position: new google.maps.LatLng(lat, lng),
  map: map,
  title:"I'm Here!"
});
}
Run Code Online (Sandbox Code Playgroud)

这需要lat和lng,并且绘制地图就好了,但是当新的lat&lng变量通过websocket被推入此函数时,页面不会重新加载,但是地图会在新的lat&lng中使用标记重新绘制位置.

我想更新地图上的标记而不重绘地图.

javascript jquery google-maps-api-3

0
推荐指数
1
解决办法
4960
查看次数