Class: Decidim::Comments::CreateComment
- Inherits:
-
Decidim::Command
- Object
- Decidim::Command
- Decidim::Comments::CreateComment
- Defined in:
- decidim-comments/app/commands/decidim/comments/create_comment.rb
Overview
A command with all the business logic to create a new comment
Instance Method Summary collapse
-
#call ⇒ Object
Executes the command.
-
#initialize(form, author) ⇒ CreateComment
constructor
Public: Initializes the command.
Methods inherited from Decidim::Command
call, #evaluate, #method_missing, #respond_to_missing?, #transaction, #with_events
Constructor Details
#initialize(form, author) ⇒ CreateComment
Public: Initializes the command.
form - A form object with the params.
10 11 12 13 |
# File 'decidim-comments/app/commands/decidim/comments/create_comment.rb', line 10 def initialize(form, ) @form = form @author = end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Decidim::Command
Instance Method Details
#call ⇒ Object
Executes the command. Broadcasts these events:
-
:ok when everything is valid.
-
:invalid if the form was not valid and we could not proceed.
Returns nothing.
21 22 23 24 25 26 27 28 29 |
# File 'decidim-comments/app/commands/decidim/comments/create_comment.rb', line 21 def call return broadcast(:invalid) if form.invalid? with_events do create_comment end broadcast(:ok, comment) end |