ActionView::Template::Error (undefined method `method_defined?' for #<Array:0x0000001a2be188>):

2015/10/24 22:23 に 森山誠二郎 が投稿   [ 2015/10/24 22:25 に更新しました ]
hobo 2.1.0 でsignupがエラーになるため、hobo2.2.3(+Rails4.2.4)にあげたところ上記のエラーがtable-plusで出るようになった。たとえば、以下のようなtable-plus記述:
<table-plus with="&@cell.instances.to_a" fields="&fields" >

に関係ありそうな記述があり、確認したところ、確かに
gems/hobo_rapid-2.2.3/taglibs/plus/table_plus.drymlで、
<page-nav param if="&this.method_defined?(:page_count) || this.method_defined?(:total_pages)" merge-attrs="&ajax_attrs" />
を、
<page-nav param if="&this.respond_to?(:page_count) || this.respond_to?(:total_pages)" merge-attrs="&ajax_attrs" />
に戻すとエラーは出なくなる。これが原因であることは間違いないが、その後修正される気配はない。

【対策】以下のようにdrymlらしい記述に変えた:

<table-plus:instances fields="&fields">

Comments