On 9/27/07, Jonas Pfenniger <[EMAIL PROTECTED]> wrote:
> Hi Gregor,
>
> I wasn't able to track the error on Camping side, but it comes from
> r2r that defines nil.error_missing.
>
> 2007/9/27, Gregor Schmidt <[EMAIL PROTECTED]>:
> >     require "rubygems"
> >     require "ruby2ruby"
>
> # It works in this case but probably breaks r2r on a larger scale.
> class NilClass
>   undef method_missing
> end
>
> >     Camping.goes :Test
> >
> >     module Test
> >       module Controllers
> >         class Index < R '/'
> >           def get
> >             div.literate_programming! do
> >               example { 1 + 1 == 2 }
> >             end
> >           end
> >         end
> >       end
> >
> >       module Helpers
> >         def example(&block)
> >           pre( block.to_ruby.gsub(/^proc \{\n(.*)\n\}$/m, '\1'))
> >         end
> >       end
> >     end
>
> > I don't know where the :href attribute comes from and I don't know,
> > why it only appears within camping and not in markaby itself.
>
> Camping overrides [:href,:action,:src] to translate relative links to
> absolute ones. See Mab at the end of camping-unabridged.
>

Thanks for the hint. Finally I manged to work around the incompatibility.

Defining NilClass#method_missing for nothing is not too clever, for a
large scale libary IMO.

By adding

    module Test  # This is my Camping app - not the test/unit test
thing (just a reminder)
      class Mab
        def tag!(*g,&b)
          super
        end
      end
    end

the problem is solved. Since I'm not changing any behaviour the code
should not have unwanted side effects. Perhaps this gives you an idea,
where the real cause of the problem is. At least I've got a solution
now.

Thanks for the help

Cheers,

Gregor
_______________________________________________
Camping-list mailing list
Camping-list@rubyforge.org
http://rubyforge.org/mailman/listinfo/camping-list

Reply via email to