How does controller call render when there's no render in action


#1

Hello,

I was studying Rails source and at this point:

def process(request, response, method = :perform_action, *arguments)
#:nodoc:
response.request = request

    initialize_template_class(response)
    assign_shortcuts(request, response)
    initialize_current_url
    assign_names

    log_processing
    send(method, *arguments)

    send_response

I have a question.

“send(method, *arguments)” this calls action of a controller, right?
But if there’s no ‘render’ in action - how does it automatically call
render and renders the template for the action?

Thanks a lot


#2

On Jun 6, 12:17 pm, Vojto removed_email_address@domain.invalid wrote:

I have a question.

“send(method, *arguments)” this calls action of a controller, right?

not quite - (at least in the common) case, the method that gets called
is perform_action, which calls default_render if you have not called
render.

Fred


#3

Sweet,

so I totally missed perform_action method :slight_smile:

Thanks :slight_smile:

On Jun 6, 3:01 pm, Frederick C. removed_email_address@domain.invalid