I've been spent a lot of time and still trying figure out how to pass a result(return) of operation to my view. As regarding documentation I created cell, operation and view folders inside concepts folder. I'm working with Search app, here is my cell/show.rb
module Search::Cell
class Show < Trailblazer::Cell
end
end
Here is view/show.rb
<h1> Hello! </h1>
#how to pass result here?
<a href="/search">Return back</a>
My operation/show.rb
require "trailblazer/operation"
module Search::Operation
class Show < Trailblazer::Operation
step :hello_world!
fail :log_error
def hello_world!(options, search_word)
puts "Hello, Trailblazer!"
search_word = search_word[:params]
search_word.downcase!
true
end
def log_error
p "Some error happened!!"
true
end
end
end
And search_controller.rb
class SearchController < ApplicationController
def index
search_word = params[:text]
if search_word.present?
Search::Operation::Show.(params: search_word)
render html: cell(Search::Cell::Show).()
else
render html: cell(Search::Cell::Index).()
end
end
end
Which variable or method should I use to pass result from operation (hello_world! method to view? I tried different things (heard some about ctx variable also tried instance variable like in common rails app) and debugging a lot with pry and didn't solve it. Please, help me!