
Foorum::ResultSet::Forum - Forum object

$schema->resultset('Forum')->get( $forum_id );
$c->model('DBIC::User')->get( $forum_id );
$c->model('DBIC::User')->get( $forum_code );
get() do not query database directly, it try to get from cache, if not exists, get from database and set a cache. (we may call it $forum_obj below)
{
forum_id => 1,
forum_code => 'FoorumTest',
# other columns in database
forum_url => '/forum/ForumTest',
settings => {
can_post_threads => 'Y',
can_post_replies => 'N',
can_post_polls => 'Y'
}
}
settings in the hash is from Foorum::ResultSet::ForumSettings get_basic.
return $HASHREF
$schema->resultset('Forum')->update_forum( $forum_id, { last_post_id => $topic_id } );
$c->model('DBIC::Forum')->update_forum( $forum_id, { total_members => $members } );
inside, it calls search( { forum_id => $forum_id } )->update($update) and remove cache in get
$schema->resultset('Forum')->remove_forum( $forum_id );
delete all things belong to $forum, BE CAREFUL, it's un-recoverable.
$schema->resultset('Forum')->merge_forums( { from => $old_forum_id, to => $new_forum_id } );
move things belong to $old_forum_id to $new_fourm_id
$schema->resultset('Forum')->validate_forum_code( $forum_code );
$c->model('DBIC::Forum')->validate_forum_code( $forum_code );
validate $forum_code, return nothing means OK while return $str is an error_code like 'LENGTH', 'HAS_RESERVED' and others.

Fayland Lam <fayland at gmail.com>