2
레일스에서 간단한 관리 인터페이스 인 gem을 만들고 있습니다. 레일 응용 프로그램을 구축 한 경험이 있지만 처음으로 보석을 개발할 때 레일 내부의 보석 부분에 메서드를 만드는 개념에 문제가 있습니다. 예를 들어레일 4에 커스텀 메소드 추가하기 MVC
내가 내 보석의 일부 내 세 가지 방법이 응용 프로그램을 레일을 통해 액세스 할 수 있도록합니다. my_controller_method, my_model_method, my_view_method
# lib/my_gem/view_helpers.rb
module MyGem
module ViewHelpers
def my_view_method(data)
# super mega stuff
end
end
end
# lib/my_gem/active_record.rb
module MyGem
module ActiveRecord
def my_model_method(data)
# super mega stuff
end
end
end
# lib/my_gem/controller_additions.rb
module MyGem
module ControllerAdditions
def my_controller_method(data)
# super mega stuff
end
end
end
그래서 나는 이러한 방법 내 레일 MVC 아키텍처에서 사용할 수 원하는 : 방법입니다. 예를 들어
#app/models/institution.rb
class Institution < ActiveRecord::Base
validates_presence_of :contact_person, :phone_number, :email
my_model_method :some_data
end
#app/controllers/institutions_controller.rb
class InstitutionsController < ApplicationController
my_controller_method :some_data
end
#app/views/institutions/index.html
<h1></h1>
<%= my_view_method(some_data) %>
그래서 MVC 레일 내 보석에서 메소드를 추가하는 가장 좋은 방법은 무엇입니까?
관련 블로그 게시물에 대한 링크를 추가했습니다. –
작은 문제가있어서 include/extend를 변경해야합니다. ViewHelper 모듈이 포함되었으며 ActiveRecord 및 ControllerAdditions 모듈은 확장 된 위치에 있습니다. 그리고 나서 그것은 작동했습니다 : D –
죄송합니다, 그냥 오타, 나는 그것을 고치지 않을 것입니다. –