2011-08-05 4 views
0

HTMLからFRMLの断片を選択する方法が必要です。Rails - ビューからHTMLフラグメントを読み取る

私が必要とするメソッドは、ActionDispatch :: SelectorAssertions :: css_selectメソッドとまったく同じですが、私はVIEWレイヤーにそのメソッドが必要です。

私はHTML :: Selectorクラスを見つけましたが、私が望むように機能させることはできません。

アイデア? 敬具、 マイク

+0

で本の作業例を見つけることができますOK、私はパーシャルで私の問題を解決してきましたHTML断片を「レンダリング:部分...」として読み込みます。とにかく、CONTROLLER/VIEWレイヤーに直接css_selectメソッドを含めることに興味があります。だから、どんな考え? –

答えて

0

これは、それが必要以上の方法より厄介であることが判明したが、あなたのクラスで:代わりにこれにより

require 'action_dispatch/testing/assertions' 
require 'action_dispatch/testing/assertions/selector' 
include ActionDispatch::Assertions::SelectorAssertion 
require 'action_controller/vendor/html-scanner/html/tokenizer' 
require 'action_controller/vendor/html-scanner/html/document' 

、あなたはこのようにあなたの@raw HTMLを解析することができます。

@selected = HTML::Document.new(@raw).root.children 

@selectedと設定すると、css_selectedと電話することができます。

注:Railsの2.xでは、との最初の3行を置き換える:

require 'action_controller/assertions/selector_assertions' 
include ActionController::Assertions::SelectorAssertions 

あなたはhttps://github.com/rubys/gorp/blob/master/lib/gorp/test.rb

関連する問題