首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails -尝试更改值时出现stringify_key错误

Rails -尝试更改值时出现stringify_key错误
EN

Stack Overflow用户
提问于 2018-09-28 05:12:30
回答 1查看 39关注 0票数 0

我有一个按钮,可以更改布尔值以停用对象,而不是删除它。它可以工作,但是当我尝试对它应用样式时,我得到了以下错误:

代码语言:javascript
复制
undefined method `stringify_keys' for "/coins/1/flop":String

我知道stringify_keys正在尝试将符号转换为字符串,但我不确定它如何适用于这种情况,或者如何修复它。

代码语言:javascript
复制
<div class="coin-container__coin-header-container" id="coin-hdr">
  <img class="" src='<%= @img_url_ %>' />
  <h2><%= @coin.currency_name %></h2>
  <% coin_change_class = "coin-change" %>
  <% @percent_change_1h_ >= 0 ? coin_change_class += ' positive' : coin_change_class += ' negative' %>
  <p class='<%= coin_change_class %>'><%= @percent_change_1h_ %>%</p>

  <div class="coin-update-buttons">     
    <% if can? :update, @coin %>
        <%= link_to edit_coin_path(@coin), "data-turblinks" => "false" do %>
            <i class="fas fa-pencil-alt"></i>
        <% end %>
    <% end %>
    <% if can? :destroy, @coin %>
      <%= link_to (@coin.accepted ? true : false), flop_coin_path(@coin), data: { confirm: "Do you want to delete this coin?" } do %>
        <i class="far fa-trash-alt"></i>
        <% end %>
    <% end %>
  </div>

</div>

我的Coin控制器中的flop方法如下:

代码语言:javascript
复制
def flop
  coin = Coin.find(params[:id])
  coin.accepted = !coin.accepted
  coin.save
  redirect_to coin_path(coin)
end

有人能给我指出我在哪里出了错吗?

EN

回答 1

Stack Overflow用户

发布于 2018-09-28 12:22:10

用于“/coins/1/

”的未定义方法`stringify_keys‘:String

代码语言:javascript
复制
link_to(url, html_options = {}) do
  # name
end

你做错了。对具有名称和块的link_to应用样式的正确方法如下所示。

代码语言:javascript
复制
<%= link_to flop_coin_path(@coin), data: { confirm: "Do you want to delete this coin?" } do %>
  (@coin.accepted ? true : false) <i class="far fa-trash-alt"></i>
<% end %>

此外,将布尔值显示为link_to的名称也很奇怪。我会像这样做

代码语言:javascript
复制
<%= link_to flop_coin_path(@coin), data: { confirm: "Do you want to delete this coin?" } do %>
  (@coin.accepted ? "Activate" : "Deactivate") <i class="far fa-trash-alt"></i>
<% end %>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52545206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档