2017-11-19 1 views
0

액체 템플릿 엔진이 템플릿의 Ruby 라이브러리에 액세스 할 수 있는지 궁금합니다. 나는 웹 인터페이스를 프로토 타입하기 위해 지킬을 사용하고 있습니다. 예를 들어 이름 등 현실적인 컨텐트를 생성하기 위해 Faker을 사용하고 싶습니다.Liquid 템플릿의 Ruby 라이브러리에 액세스, 특히 Faker

저는 Liquid 플러그인을 작성하는 길로 나아갈 수 있습니다. 루비 라이브러리를 Liquid 템플릿에 노출시킵니다.

답변

1

다른 일반 모듈과 마찬가지로 Jekyll 플러그인에서 다른 모듈에 액세스 할 수 있습니다.이 경우 Plugin에서 플러그인을 사용하는 데 문제가 없습니다. 플러그인을 만드는 예를 들어

는 위조자를 사용하여 임의의 이름을 생성하는 태그를 사용합니다 : <p>{% render_name this is a faker name: %}</p> 출력 : this is a faker name: Ulises Bergstrom

require 'faker' 

module Jekyll 

    class RandomnameTag < Liquid::Tag 

    def initialize(tag_name, text, tokens) 
     super 
     @text = text 
     @name = Faker::Name.name 
    end 

    def render(context) 
     "#{@text} #{@name}" 
    end 
    end 
end 

Liquid::Template.register_tag('render_name', Jekyll::RandomnameTag) 

그럼 당신은로 사용할 수 있습니다.

관련 문제