Might this be due to the fact that Rails will render a view even if
there's no corresponding controller action behind it? I.E. even though
you are removing the 'new' action, because the 'new.rhtml' file is
present and locatable, Rails will presume that you want to render
that.

I'm not sure that I can see a way around this at the moment, since the
idea of Engines is that you don't need to mess with the internals. As
you say, you can always fake out the action to send the user somewhere
else.

If anyone has any better ideas, let us know...

- james

On 2/15/06, Jay Levitt <[EMAIL PROTECTED]> wrote:
> How can I override an engine action with nothingness?  For instance, I want
> all my users to register themselves, so I want to remove the ability to
> create a new user.
>
> I tried
>
> def new
> end
>
> as well as
>
> undef new
>
> in my user_controller.rb, but in each case, Rails still tried to render the
> engine's new template, with some errors presumably due to the
> now-improperly-set up instance variable.
>
> In this case, I'm happy creating a fake new action that redirects to
> :action => 'home', but it seems like a general need people might have with
> engines.
>
> Jay Levitt
>
> _______________________________________________
> engine-users mailing list
> [email protected]
> http://lists.rails-engines.org/listinfo.cgi/engine-users-rails-engines.org
>


--
* J *
  ~
_______________________________________________
engine-users mailing list
[email protected]
http://lists.rails-engines.org/listinfo.cgi/engine-users-rails-engines.org

Reply via email to