1 |
package Frey::Web::CRUD; |
package Frey::Web::CRUD; |
2 |
use Moose; |
use Moose; |
3 |
extends 'Frey::Web::Item'; |
extends 'Frey'; |
4 |
|
with 'Frey::Web::Item'; |
5 |
|
with 'Frey::Web::Button'; |
6 |
|
|
7 |
=head1 NAME |
=head1 NAME |
8 |
|
|
34 |
sub delete_button { |
sub delete_button { |
35 |
my $self = shift; |
my $self = shift; |
36 |
$self->add_button('Delete' => sub { |
$self->add_button('Delete' => sub { |
37 |
|
my $id = $self->fey->id; |
38 |
$self->fey->delete; |
$self->fey->delete; |
39 |
$self->next( qq|<div class="notice">Deleted id @{[$self->id]}!</div>|); |
$self->next( qq|<div class="notice">Deleted id $id</div>|); |
40 |
$self->render_as( 'none' ); |
$self->render_as( 'none' ); |
41 |
# Strix::Schema->ClearObjectCaches(); # XXX important! |
# Strix::Schema->ClearObjectCaches(); # XXX important! |
42 |
}); |
}); |
55 |
warn "Inserted ",$u->id; |
warn "Inserted ",$u->id; |
56 |
# XXX store object for later |
# XXX store object for later |
57 |
$self->fey( $u ); |
$self->fey( $u ); |
|
# put ID in widget, so that it know it's not new |
|
|
$self->id( $u->id ); |
|
58 |
$self->render_as( 'view' ); |
$self->render_as( 'view' ); |
59 |
$self->edit_delete_buttons; |
$self->edit_delete_buttons; |
60 |
$self->remove_button( 'Add' ); |
$self->remove_button( 'Add' ); |