Haml: рд▓рд┐рдХреНрд╡рд┐рдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 4 рдЬреВрди 2010  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: haml/haml

рдЬрдм рднреА рдореИрдВ рд▓рд┐рдХреНрд╡рд┐рдб рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдСрдмреНрдЬреЗрдХреНрдЯ/рдореЙрдбрд▓ рдкрд░ is_haml? рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓рддреА рд╣реИрдВред рдХреНрдпрд╛ рд▓рд┐рдХреНрд╡рд┐рдб рдФрд░ рдПрдЪрдПрдПрдордПрд▓ рдХреЛ рд╕рд╛рде-рд╕рд╛рде рдЪрд▓рдиреЗ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рд╕рдВрдЧрддрддрд╛ рд╕реЗрдЯрд┐рдВрдЧ рд╣реИ?

рдзрдиреНрдпрд╡рд╛рдж!

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@dewski - рдХрд╕реНрдЯрдо рд▓рд┐рдХреНрд╡рд┐рдб рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рднреАрддрд░ рдПрдХреНрд╢рди рд╡реНрдпреВ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреБрдЫ рдореБрджреНрджреЛрдВ рдореЗрдВ рднрд╛рдЧ рд▓рд┐рдпрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг:

module LiquidFilters

  include ActionView::Helpers::TagHelper
  include ActionView::Helpers::UrlHelper

  def mailto(address, name = nil)
    mail_to(address, name, :encode => "javascript")
  end

end

Liquid::Template.register_filter(LiquidFilters)

рдореИрдВ рддрдм рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рдерд╛ ...

Liquid error: undefined method `is_haml?' for #

рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╣реИрдорд▓ :: рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЛ рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдлрд┐рдХреНрд╕ рдерд╛ ...

include Haml::Helpers

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдмрд┐рд▓реНрдХреБрд▓ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред

рд╕рд╛рджрд░,
рдбреЗрд╡рд┐рдб рдмрд╛рд▓реНрдбрд╡рд┐рди

рд╕рднреА 8 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Haml рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ Object#is_haml? рд╡рд┐рдзрд┐ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡рд░реНрддрдорд╛рди рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рдВрджрд░реНрдн Haml рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд▓рд┐рдХреНрд╡рд┐рдб рдХреА рд╕рдВрджрд░реНрдн рд╡рд╕реНрддреБрдПрдВ рдЗрд╕реЗ рдХрд╣реАрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд░рд╣реА рд╣реИрдВ ... рдХреНрдпрд╛ рдЖрдк рдореБрдЭреЗ рдПрдХ рдиреНрдпреВрдирддрдо рд░реЗрд▓ рдРрдк рдХрд╛ рдЯреИрд░рдмреЙрд▓ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ?

@dewski - рдХрд╕реНрдЯрдо рд▓рд┐рдХреНрд╡рд┐рдб рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рднреАрддрд░ рдПрдХреНрд╢рди рд╡реНрдпреВ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреБрдЫ рдореБрджреНрджреЛрдВ рдореЗрдВ рднрд╛рдЧ рд▓рд┐рдпрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг:

module LiquidFilters

  include ActionView::Helpers::TagHelper
  include ActionView::Helpers::UrlHelper

  def mailto(address, name = nil)
    mail_to(address, name, :encode => "javascript")
  end

end

Liquid::Template.register_filter(LiquidFilters)

рдореИрдВ рддрдм рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рдерд╛ ...

Liquid error: undefined method `is_haml?' for #

рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╣реИрдорд▓ :: рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЛ рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдлрд┐рдХреНрд╕ рдерд╛ ...

include Haml::Helpers

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдмрд┐рд▓реНрдХреБрд▓ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред

рд╕рд╛рджрд░,
рдбреЗрд╡рд┐рдб рдмрд╛рд▓реНрдбрд╡рд┐рди

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╣реА рдХрд░реЗрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рдЪрд╛рд╣рд┐рдП, рдореИрдВ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЖрдкрд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░реВрдВрдЧрд╛ред рдзрдиреНрдпрд╡рд╛рдж!

рдзрдиреНрдпрд╡рд╛рдж рдбреЗрд╡рд┐рдб, рдЬрд┐рд╕рдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ред рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдирд╛рдерди рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рдХреНрдпрд╛ рд╣реИрдорд▓ рдХреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд▓рд┐рдХреНрд╡рд┐рдб рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдЗрд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ?

рд▓рд┐рдХреНрд╡рд┐рдб рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдпрд╣рд╛рдВ рдЬрд╛рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рд╣рдореЗрдВ рдЕрднреА рднреА рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдореБрджреНрджреЗ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рдЙрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рдореБрдЭреЗ рдЕрднреА рднреА рдПрдХ рд░реЗрд▓ рдРрдк рд░реЗрдкреНрд░реЛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣рд╛рдВ рдПрдХ рдмреЗрдпрд░рдмреЛрди рдРрдк рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реЗрдЧрд╛ ...

git clone git://github.com/baldwindavid/liquidhaml.git
cd liquidhaml
rake db:setup
script/server

рдХреЗрд╡рд▓ рдкреЛрд╕реНрдЯ рдХрд╛ "рджрд┐рдЦрд╛рдПрдБ" рджреГрд╢реНрдп рддреНрд░реБрдЯрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлрд┐рд░ рджреЗрдЦ рд▓реАрдЬрд┐рдП...

config/initializers/liquid.rb

include Haml::Helpers рдХреЛ рд╣рдЯрд╛рдиреЗ рд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рдпрд╣ рдЙрджрд╛рд╣рд░рдг рд░реЗрд▓ 2.3.5 рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд░рддреНрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ...

config.gem "haml", :version => "3.0.4"
config.gem "liquid", :version => "2.0.0"

рдЕрдЧрд░ рдЖрдкрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЪрд╛рд╣рд┐рдП рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред рдзрдиреНрдпрд╡рд╛рджред

рд╕рд╛рджрд░,
рдбреЗрд╡рд┐рдб рдмрд╛рд▓реНрдбрд╡рд┐рди

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрд╛рд╕реА рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░рдирд╛ред рдЕрдЧрд░ рдХреЛрдИ рдЕрднреА рднреА рдЗрд╕рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реИ рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдФрд░ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реВрдВрдЧрд╛ред

рдзрдиреНрдпрд╡рд╛рдж @baldwindavid ред рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ Haml :: рд╣реЗрд▓реНрдкрд░реНрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

atomAltera picture atomAltera  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mattwildig picture mattwildig  ┬╖  9рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kamen-hursev picture kamen-hursev  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

k0kubun picture k0kubun  ┬╖  13рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dguettler picture dguettler  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ