Je suis en train de créer une API Rails dans laquelle j'aimerais utiliser Active Storage pour attacher des images aux articles et pouvoir ensuite y accéder dans REACT, par exemple pour obtenir le lien url en JSON. Comment puis-je convertir les images d'Active Storage en urls pour JSON ? Existe-t-il une meilleure façon d'obtenir le lien vers les images pour les articles ?
Par exemple, je voudrais que l'url de l'image soit incluse dans ces informations :
De : http://localhost:3001/api/posts
[{"id":8,"title":"lolol","body":"lolol","created_at":"2018-07-19T23:36:27.880Z","updated_at":"2018-07-20T00:17:50.201Z","admin_user_id":1,"post_type":"Song","link":"dgdadg","song_title":"dgdadg","tag_list":[]},{"id":13,"title":"ddd","body":"dd","created_at":"2018-07-20T00:21:39.903Z","updated_at":"2018-07-20T00:21:39.907Z","admin_user_id":1,"post_type":"Song","link":"dddd","song_title":"ddd","tag_list":["Tag"]}]
Voici mon contrôleur de poste :
class PostsController < ApiController
before_action :set_post, only: [:show, :update, :destroy]
def index
if params[:tag]
@posts = Post.tagged_with(params[:tag])
else
@posts = Post.all
end
render :json => @posts
end
def show
@post
render :json => @post
end
def create
@post = Post.new(post_params)
end
def update
@post.update(post_params)
head :no_content
end
def destroy
@post.destroy
head :no_content
end
private
def post_params
params.require(:post).permit(:title, :body, :song_title, :post_type, :admin_user_id, :link, :tag_list, :image)
end
def set_post
@post = Post.find(params[:id])
end
end
Toute suggestion serait grandement appréciée.