как определить функцию в rails 3 и как ее вызвать?

#ruby-on-rails-3

#ruby-on-rails-3

Вопрос:

Я новичок в rails 3, можете ли вы рассказать мне, как определить функцию в rails 3?

Ответ №1:

Я не уверен, о чем вы спрашиваете… На самом деле вы не просто определяете функцию, а затем продолжаете свой веселый путь… Вы понимаете, как фреймворк работает вместе?

Rails (все rails, а не только 3) имеет модель, представление и контроллер (грубо говоря), которые работают вместе для отображения веб-страницы. Модель описывает объект (например, пользователя), контроллер описывает, что вы можете делать с пользователем (обычно CRUD: создавать, читать, обновлять, уничтожать), а представление описывает, как отображать пользователя (например, html-страницу).

Если вы хотите поместить функцию (называемую «методами» в ruby) в вашу модель, вы могли бы сделать что-то вроде:

 class User < ActiveRecord::Base

  def my_method
     return "Hello World"
  end

end
  

Если бы вы хотели вызвать свой метод, вам понадобился бы реальный отдельный пользователь для его вызова. Например, вы могли бы сделать что-то вроде:

 u = User.create()
u.my_method
  

Если вы хотите, чтобы метод применялся ко всем пользователям, а не только к одному пользователю, вы могли бы вместо этого создать переменную класса, например:

 def User.class_method

end
  

и вызовите ее как User.class_method.

Надеюсь, это поможет…в Интернете есть МНОГО руководств, которые вы можете просмотреть.