Я создаю приложение rails и пытаюсь получить некоторые данные из API.
Это мой контроллер
require 'will_paginate/array'
class AlbumsController < ApplicationController
def index
@albums = HTTParty
.get('https://jsonplaceholder.typicode.com/albums', :headers => {'Content-Type' => 'application/json'})
.paginate(:page => params[:page], :per_page => 10)
end
def show
end
end
и это мое индексное представление
<main role="main" class="flex-shrink-0">
<div class="container">
<h1 class="mt-5">Albums</h1>
<p class="lead">Here we show all albums and it's details</p>
<div class="row">
<% @albums.each do |album| %>
<div class="col-md-4">
<h5 class="card-title">
<%= album['title'] %>
</h5>
<p>User_id: <%= album['user_id'] %> | id: <%= album['id'] %><p>
<%= link_to "View Album", album, class: "btn btn-primary" %>
</div>
<% end %>
</div>
</div>
<%= will_paginate @albums, renderer: WillPaginate::ActionView::BootstrapLinkRenderer, class: 'margin-auto' %>
</main>
Проблема здесь заключается в ссылке, у меня есть resources :albums
в файле маршрутов.
albums GET /albums(.:format) albums#index
POST /albums(.:format) albums#create
new_album GET /albums/new(.:format) albums#new
edit_album GET /albums/:id/edit(.:format) albums#edit
album GET /albums/:id(.:format) albums#show
PATCH /albums/:id(.:format) albums#update
PUT /albums/:id(.:format) albums#update
DELETE /albums/:id(.:format) albums#destroy
users_show GET /users/show(.:format) users#show
root GET / albums#index
Однако, когда я наведите курсор мыши на кнопку, она указывает на следующее
Как мне перейти только на соединение с идентификатором, т.е. localhost: 3000 / album / 2
UPDATE 1
rout.rb
Rails.application.routes.draw do
resources :albums
get 'users/show'
root 'albums#index'
end