$POUSPMMFS4FSWJDF w $POUSPMMFSͷࣄ w ϦΫΤετύϥϝʔλͱηογϣϯσʔλͷݕূ w ݕূࡁΈͷҾͷ४උ w ΤϯυϙΠϯτʹରԠ͢Δ4FSWJDFGVODUJPOΛݺͼ ग़͢ w 4FSWJDFͷΓΛͬͯϨεϙϯεͲ͏ʹ͔͢Δ )5.-͔+40/ΛϨϯμϦϯά͢Δ
4FSWJDF.PEFM w 4FSWJDFͷࣄ w ύϥϝʔλΛݩʹ.PEFMΦϒδΣΫτΛੜ w .PEFMΦϒδΣΫτͷϩδοΫΛݺͼग़͢ w ϩδοΫͷ࣮ߦ݁ՌΛجʹɺ"1*༷ʹଈ͠ ͨΓΛ࡞Δ ༨ஊੲࣾͰʮҰͭͷ"1*&OEQPJOUʹରԠͯ͠Ұͭͷ.PEFMͷ&OUSZ1PJOUΛ༻ҙ͖͢͡ΌͶ ʯͬͯ ओுͯͨ͠Μ͚ͩͲɺΈΜͳʮ͑ʔʯͬͯײ͡Ͱߏͬͯ͘Εͳ͔ͬͨͷͰ4FSWJDF͍ͬͯ͏໊લۭؒʹ͚ͨ
༨ஊͷଓ͖ w લϖʔδͷྫɺઃܭͷํͱͯ͠௨Γ͋Γ·͢ w ࣾͩͱجຊతʹޙऀʹͳ͍ͬͯΔ͚Ͳɺݸਓతʹ͖Ͱແ͍͔ͳʔ w 1MBZFS͕ߦಈͷओମ͔ͩΒͱ͍͏ͷ͕ޙऀʹͳͬͯΔཧ༝ͳΜ͚ͩͲɺ ͦΕΛݴ͍ग़͢ͱηογϣϯඞਢͷ"1*શ෦ϓϨΠϠʔ͕ૢ࡞͢ΔͷͰ ͦ͏͍͏ݺͼग़͠ʹͳͬͯ͠·͏ 1MBZFS͕ංେԽ͢Δ
w ࣮ࡍʹͦͷϓϩδΣΫτͷίʔυΛௐͯΈͨͱ͜Ζ6TFSͷύοέʔ δ͕ݸ͘Β͍͋ͬͯ.PEFMͷίʔυͷ͕6TFSͩͬͨ w ͦ͏͍͏ྫ4FSWJDFʹ͢Ε͍͍͔ͳͱࢥͬͯ͜ͷΛ͍ͯ͠·͢ my $result = $game->start( player => $player, seed => $randval, ); my $result = $player->game->start( game => $game, seed => $randval, ); 1MBZFSΛҾʹ(BNFΛݺͿ (BNFΛҾʹ1MBZFS(BNFΛݺͿ
.PEFMͷྫɺ۩ମతʹ w 3PXͱͷύοέʔδ w %#ͷ3PXΛIBTͯ͠Ӆณ͢Δύλʔϯ w %#3FEJTΛͬͨϩδοΫύοέʔδ w VTFSςʔϒϧΛFNBJMͰݕࡧɺॏෳνΣοΫΈ͍ͨͳέʔε %#্Ͳ͔͜ʹैଐ͍ͯ͠Δ FNBJMΛओମͱͯ͠ѻ͏ w ֎෦"1*Λ༏͘͠แΈࠐΉύοέʔδ w ՝ۚݕূ"1*1VTI௨EBFNPOΛୟ͘ͳͲ w ಛఆͷ݅Λຬͨ͢σʔλू߹શମΛѻ͏ύοέʔδ w ϥϯΩϯάσʔλͳͲ
3PXͱͷͷྫ # MyApp::Model::Player.pm use Moo; has id => ( is => 'ro', ); has _row => ( is => 'lazy', default => sub { my $self = shift; my $db = MyApp->context->db; # Teng my $row = $db->single('player', { id => $self->id }); return $row; }; ); sub userinfo { my $self = shift; my $hash = $self->_row->get_columns; delete $hash->{api_token}; # ΈΜͳʹφΠγϣͩΑ return $hash; }