【问题标题】:How to display json response as information cards in the view (html page)?如何在视图(html页面)中将json响应显示为信息卡?
【发布时间】:2019-09-05 15:00:36
【问题描述】:

我目前在我的数据库内容视图中显示一个 json 响应。但是,我想在我的 html 视图中以信息卡的形式呈现它。我应该怎么做?有代码库供参考吗?

在我看来,我在 html 上显示的 json 响应如下:

{"result":[{"id":"3","username":"Sam","password":"111"},{"id":"4","username":"Harshal","password":"1234"},{"id":"5","username":"Dev","password":"112"},{"id":"6","username":"Lam","password":"113"},{"id":"7","username":"Tim","password":"114"}]}

我希望它看起来像这样

https://bootsnipp.com/tags/card

【问题讨论】:

  • 你使用哪个 UI 框架?
  • @ManUtopiK - 我使用 Ruby on Rails 作为前端,使用 php codeigniter 作为后端
  • Ruby on Rails 是一种服务器端语言!?你的前端没有使用 Ruby on Rails。
  • 正在使用rails和php的MVC框架。我在 .html.erb 格式的视图中显示结果

标签: javascript html css ruby-on-rails json


【解决方案1】:

您可以将JSON 转换为hashOpenStruct。我建议您将其转换为OpenStruct。然后就可以在视图中使用了。

users_json_string = '{"result":[{"id":"3","username":"Sam","password":"111"},{"id":"4","username":"Harshal","password":"1234"},{"id":"5","username":"Dev","password":"112"},{"id":"6","username":"Lam","password":"113"},{"id":"7","username":"Tim","password":"114"}]}'

然后

users = JSON.parse(users_json_string, object_class: OpenStruct)

现在您可以使用users 为所欲为。选择一张卡片模板。然后在循环中创建卡片,如下所示:

<div class="container">
  <div class="row">
    <% users.result.each do |user| %>
      <div class="col-sm-6 col-md-4 col-lg-3 mt-4">
        <div class="card">
          <div class="card-block">
              <h5 class="text-bold"><%= user.username %></h5>
          </div>
        </div>
      </div>
    <% end %>
  </div>
</div>

【讨论】:

  • 这只会给我用户名作为纯文本输出?我的意思是它不会像“用户名”:“Sam”那样显示?另外,我想将所有详细信息显示为卡片,类似于您在此处看到的 bootsnipp.com/tags/card
  • 我尝试使用更新后的代码,但它没有以卡片的形式提供输出,我仍然看到它在另一个下方。另外,我在 gem 文件中包含了 bootstrap gem,并且也做了 bundle install
猜你喜欢
  • 2020-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-24
  • 1970-01-01
  • 1970-01-01
  • 2015-03-01
  • 2021-11-27
相关资源
最近更新 更多