port5432
port5432

Reputation: 6403

Trailblazer cells in the Rails console

How can I work with a Trailblazer cell in the Rails console?

The concept helper doesn't work

irb(main):002:0> c = concept(Resource::Cell, l)
NoMethodError: undefined method `concept' for main:Object
Did you mean?  concern
               context
    from (irb):2

Upvotes: 1

Views: 337

Answers (1)

konung
konung

Reputation: 7046

concept() & cell() are Controller helpers, meaning they wouldn't work in console if the controller is not loaded. But you don't need them !

The easiest way to play with cell is just to invoke them like . you would with any other ruby object.

Cell

# concepts/song/cell/cell.rb
module Song::Cell
  class Index < Trailblazer::Cell
    def show
      render
    end
  end

  class Show < Trailblazer::Cell
    def show
      render
    end
  end
end

View

%h1
  Song#show
%p
  Find me in app/concepts/song/view/show.haml

Console

# Any of the following calls - they are all equivalent pretty much
# The spit html output of the cell
Song::Cell::Show.(Song.last).()
Song::Cell::Show.(Song.last).render
Song::Cell::Show.(Song.last).(:show)

Upvotes: 1

Related Questions