Good morning,

On 20/03/10 at 9:02 AM -0700, Ovid <publiustemp-catal...@yahoo.com> wrote:

1.  It breaks my app badly.
You can connect to your server at http://curtis-poes-computer-3.local:3000
[warn] Calling $c->view() will return a random view unless you specify one of:
[warn] * $c->config(default_view => "the name of the default view to use")
[warn] * $c->stash->{current_view} # the name of the view to use for this 
request
[warn] * $c->stash->{current_view_instance} # the instance of the view to use 
for this request
[warn] NB: in version 5.81, the "random" behavior will not work at all.
[error] Caught exception in Veure::View::AutoCRUD::JSON->process "must provide object to convert at /Library/Perl/5.10.1/Catalyst/View/JSON.pm line 44"

I can't tell why from the docs.  This is low priority for me, so I
stopped using it as I don't (yet) need this feature.

The fix is given in the warning message, eg:

__PACKAGE__->config(default_view => 'TT'); # or whatever the name of your view is.

Then you have a 'default' view for your app and Catalyst doesn't need to choose one at random. AutoCRUD is adding another view and Catalyst doesn't know which one to use by default.

Assigning a default_view in config is good practice anyway; it's not just an issue with AutoCRUD. Add it now, and don't get bitten later when the same problem crops up with something else (eg. adding a view for sending emails).

3.  It's not clear from the docs (to me) how to restrict access.

I'm using Catalyst::Controller::ActionRole and a custom role to ensure
that certain urls can only be accessed by those with admin privileges. I can't tell how to hook this into AutoCRUD. I suppose I could write a
custom subclass of the plugin, so this is the least of my issues.

How about using C::P::Authorization::ACL, eg:

__PACKAGE__->deny_access_unless(
    "/autocrud",
    [qw/admin/], # user must have role 'admin'
);

I balked at adding C::P::Authorization::ACL to my app just for AutoCRUD, but I couldn't find a better way of adding auth restrictions to AutoCRUD. Maybe someone else will suggest something more elegant. (I seem to recall reading something a while back about performance degradation with C::P::Authorization::ACL; can anyone clarify?)


Charlie

--
   Ꮚ Charlie Garrison ♊ <garri...@zeta.org.au>
   〠 PO Box 141, Windsor, NSW 2756, Australia

O< ascii ribbon campaign - stop html mail - www.asciiribbon.org
http://www.ietf.org/rfc/rfc1855.txt

_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/

Reply via email to