BlogPostsTable
extends BlogAppTable
in package
記事モデル
Table of Contents
Properties
- $BlogCategories : BlogCategoriesTable
- $BlogContents : BlogContentsTable
- $BlogTags : BlogTagsTable
- $publishBeginField : string
- 公開開始日のフィールド AppTable::getConditionAllowPublish() で利用
- $publishEndField : string
- 公開終了日のフィールド AppTable::getConditionAllowPublish() で利用
- $publishStatusField : string
- 公開状態のフィールド AppTable::getConditionAllowPublish() で利用
- $searchIndexSaving : bool
- 検索テーブルへの保存可否
- $tmpEvents : array<string|int, mixed>
- 一時イベント イベントを一時にオフにする場合に対象のコールバック処理を一時的に格納する
- $Users : UsersTable
- $_View : View
- View
Methods
- addPrefix() : string
- テーブル名にプレフィックスを追加する
- afterSave() : mixed
- afterSave
- afterValidate() : mixed
- After Validate
- allowPublish() : bool
- 公開状態を取得する
- beforeFind() : array<string|int, mixed>
- Before Find
- beforeSave() : void
- Before Save
- belongsToMany() : BelongsToMany
- Belongs To Many
- changeSort() : bool
- 並び順を変更する
- copy() : mixed
- コピーする
- createPreviewData() : mixed
- プレビュー用のデータを生成する
- createSearchIndex() : array<string|int, mixed>|false
- 検索用データを生成する
- dispatchLayerEvent() : bool|Event
- イベントを発火
- existsEntry() : bool
- 指定した月の記事が存在するかチェックする
- getAuthors() : array<string|int, mixed>
- 投稿者の一覧を取得する
- getConditionAllowPublish() : array<string|int, mixed>
- 公開状態となっているデータを取得するための conditions 値を取得
- getEntryDates() : array<string|int, mixed>
- カレンダー用に指定した月で記事の投稿がある日付のリストを取得する
- getMax() : int
- 指定フィールドのMAX値を取得する
- getPostedDates() : array<string|int, mixed>
- ブログの月別一覧を取得する
- getPublishByNo() : array<string|int, mixed>|EntityInterface|null
- 公開状態の記事をNOより取得する
- getPublishes() : SelectQuery
- 公開状態の記事を取得する
- getTable() : string
- テーブルを取得
- getUrlPattern() : array<string|int, mixed>
- コンテンツのURLにマッチする候補を取得する
- initialize() : void
- Initialize method
- offEvent() : mixed
- イベントを一時的にオフにする
- onEvent() : mixed
- 一時的にオフにしたイベントをオンにする BcModelEventDispatcherは対象外とする
- replaceText() : string
- 機種依存文字の変換処理
- setTable() : AppTable
- テーブルをセット
- setupUpload() : mixed
- アップロードビヘイビアの設定
- sortdown() : bool
- 一つ位置を下げる
- sortup() : bool
- 一つ位置を上げる
- validationDefault() : Validator
- デフォルトのバリデーションルールを設定
- _getEntryDatesConditions() : array<string|int, mixed>
- 年月を指定した検索条件を生成 データベースごとに構文が違う
Properties
$BlogCategories
public
BlogCategoriesTable
$BlogCategories
$BlogContents
public
BlogContentsTable
$BlogContents
$BlogTags
public
BlogTagsTable
$BlogTags
$publishBeginField
公開開始日のフィールド AppTable::getConditionAllowPublish() で利用
public
string
$publishBeginField
= 'publish_begin'
$publishEndField
公開終了日のフィールド AppTable::getConditionAllowPublish() で利用
public
string
$publishEndField
= 'publish_end'
$publishStatusField
公開状態のフィールド AppTable::getConditionAllowPublish() で利用
public
string
$publishStatusField
= 'status'
$searchIndexSaving
検索テーブルへの保存可否
public
bool
$searchIndexSaving
= true
$tmpEvents
一時イベント イベントを一時にオフにする場合に対象のコールバック処理を一時的に格納する
public
array<string|int, mixed>
$tmpEvents
= []
$Users
public
UsersTable
$Users
$_View
View
protected
View
$_View
Methods
addPrefix()
テーブル名にプレフィックスを追加する
public
addPrefix(mixed $table) : string
$this->getConnection()->config() を利用するとユニットテストで問題が発生するため、BcUtil::getCurrentDbConfig()を利用する
$this->getConnection()->config()を利用すると、 そのテーブルに connection が設定されてしまう。
ユニットテストの dataProvider で、テーブルを初期化する場合、 タイミング的に、接続についてテスト用のエイリアスが設定されていないので、 テスト用の接続ではなく、 default がセットされてしまう。
Parameters
- $table : mixed
Tags
Return values
stringafterSave()
afterSave
public
afterSave(EventInterface $event, EntityInterface $entity, array<string|int, mixed> $options) : mixed
Parameters
- $event : EventInterface
- $entity : EntityInterface
- $options : array<string|int, mixed>
Tags
afterValidate()
After Validate
public
afterValidate() : mixed
allowPublish()
公開状態を取得する
public
allowPublish(mixed $post) : bool
期限が設定されている場合、期限外では公開状態が非公開となる
Parameters
- $post : mixed
Tags
Return values
bool —公開状態
beforeFind()
Before Find
public
beforeFind(EventInterface $event, Query $query, array<string|int, mixed> $options, mixed $primary) : array<string|int, mixed>
Parameters
- $event : EventInterface
- $query : Query
- $options : array<string|int, mixed>
- $primary : mixed
Tags
Return values
array<string|int, mixed>beforeSave()
Before Save
public
beforeSave(EventInterface $event, EntityInterface $entity, ArrayObject $options) : void
Parameters
- $event : EventInterface
- $entity : EntityInterface
- $options : ArrayObject
Tags
belongsToMany()
Belongs To Many
public
belongsToMany(string $associated[, array<string|int, mixed> $options = [] ]) : BelongsToMany
joinTable にプレフィックスを追加
Parameters
- $associated : string
- $options : array<string|int, mixed> = []
Tags
Return values
BelongsToManychangeSort()
並び順を変更する
public
changeSort(string $id, int $offset[, array<string|int, mixed> $options = [] ]) : bool
Parameters
- $id : string
- $offset : int
- $options : array<string|int, mixed> = []
-
- conditions: データ取得条件
- sortFieldName: ソートフィールドのカラム名 (初期値: sort)
Tags
Return values
boolcopy()
コピーする
public
copy([int $id = null ][, BlogPost $data = null ]) : mixed
Parameters
- $id : int = null
- $data : BlogPost = null
Tags
Return values
mixed —page Or false
createPreviewData()
プレビュー用のデータを生成する
public
createPreviewData(array<string|int, mixed> $data) : mixed
Parameters
- $data : array<string|int, mixed>
createSearchIndex()
検索用データを生成する
public
createSearchIndex(mixed $post) : array<string|int, mixed>|false
Parameters
- $post : mixed
Tags
Return values
array<string|int, mixed>|falsedispatchLayerEvent()
イベントを発火
public
dispatchLayerEvent(string $name[, array<string|int, mixed> $data = [] ][, mixed $options = [] ]) : bool|Event
Parameters
- $name : string
- $data : array<string|int, mixed> = []
- $options : mixed = []
Tags
Return values
bool|EventexistsEntry()
指定した月の記事が存在するかチェックする
public
existsEntry(int $blogContentId, int $year, int $month) : bool
Parameters
- $blogContentId : int
- $year : int
- $month : int
Tags
Return values
boolgetAuthors()
投稿者の一覧を取得する
public
getAuthors(int $blogContentId, array<string|int, mixed> $options) : array<string|int, mixed>
Parameters
- $blogContentId : int
-
ブログコンテンツID
- $options : array<string|int, mixed>
-
オプション
Tags
Return values
array<string|int, mixed>getConditionAllowPublish()
公開状態となっているデータを取得するための conditions 値を取得
public
getConditionAllowPublish() : array<string|int, mixed>
公開状態(初期値:status)、公開開始日(初期値:publish_begin)、公開終了日(初期値:publish_end) の組み合わせてによって配列を生成する。
公開状態が true であったとしても、公開期間が設定されている場合はそちらを優先する。
Tags
Return values
array<string|int, mixed>getEntryDates()
カレンダー用に指定した月で記事の投稿がある日付のリストを取得する
public
getEntryDates(int $blogContentId, int $year, int $month) : array<string|int, mixed>
Parameters
- $blogContentId : int
-
ブログコンテンツID
- $year : int
-
年
- $month : int
-
月
Tags
Return values
array<string|int, mixed>getMax()
指定フィールドのMAX値を取得する
public
getMax(string $field[, array<string|int, mixed> $conditions = [] ]) : int
現在数値フィールドのみ対応
Parameters
- $field : string
- $conditions : array<string|int, mixed> = []
Tags
Return values
intgetPostedDates()
ブログの月別一覧を取得する
public
getPostedDates([int $blogContentId = null ][, array<string|int, mixed> $options = [] ]) : array<string|int, mixed>
Parameters
- $blogContentId : int = null
-
ブログコンテンツID
- $options : array<string|int, mixed> = []
-
オプション
Tags
Return values
array<string|int, mixed> —月別リストデータ
getPublishByNo()
公開状態の記事をNOより取得する
public
getPublishByNo(int $blogContentId, int|string $no[, bool $preview = false ]) : array<string|int, mixed>|EntityInterface|null
Parameters
- $blogContentId : int
- $no : int|string
- $preview : bool = false
Tags
Return values
array<string|int, mixed>|EntityInterface|nullgetPublishes()
公開状態の記事を取得する
public
getPublishes(array<string|int, mixed> $options) : SelectQuery
Parameters
- $options : array<string|int, mixed>
Tags
Return values
SelectQuerygetTable()
テーブルを取得
public
getTable() : string
プレフィックスを追加する
Tags
Return values
stringgetUrlPattern()
コンテンツのURLにマッチする候補を取得する
public
getUrlPattern(string $url) : array<string|int, mixed>
Parameters
- $url : string
Tags
Return values
array<string|int, mixed>initialize()
Initialize method
public
initialize(array<string|int, mixed> $config) : void
Parameters
- $config : array<string|int, mixed>
-
The configuration for the Table.
Tags
offEvent()
イベントを一時的にオフにする
public
offEvent(string $eventKey) : mixed
Parameters
- $eventKey : string
Tags
onEvent()
一時的にオフにしたイベントをオンにする BcModelEventDispatcherは対象外とする
public
onEvent(string $eventKey) : mixed
Parameters
- $eventKey : string
Tags
replaceText()
機種依存文字の変換処理
public
replaceText(string $str) : string
内部文字コードがUTF-8である必要がある。 多次元配列には対応していない。
Parameters
- $str : string
-
変換対象文字列
Tags
Return values
string —変換後文字列
setTable()
テーブルをセット
public
setTable(string $table) : AppTable
プレフィックスを追加する
Parameters
- $table : string
Tags
Return values
AppTablesetupUpload()
アップロードビヘイビアの設定
public
setupUpload(int $id) : mixed
Parameters
- $id : int
-
ブログコンテンツID
Tags
sortdown()
一つ位置を下げる
public
sortdown(string $id, array<string|int, mixed> $conditions) : bool
Parameters
- $id : string
- $conditions : array<string|int, mixed>
Tags
Return values
boolsortup()
一つ位置を上げる
public
sortup(string $id, array<string|int, mixed> $conditions) : bool
Parameters
- $id : string
- $conditions : array<string|int, mixed>
Tags
Return values
boolvalidationDefault()
デフォルトのバリデーションルールを設定
public
validationDefault(Validator $validator) : Validator
Parameters
- $validator : Validator
Tags
Return values
Validator_getEntryDatesConditions()
年月を指定した検索条件を生成 データベースごとに構文が違う
protected
_getEntryDatesConditions(int $blogContentId, int $year, int $month) : array<string|int, mixed>
Parameters
- $blogContentId : int
- $year : int
- $month : int