LoginSignup
1
3

More than 3 years have passed since last update.

Synfony2 メソッド,フォーム,アノテーション チートシート

Last updated at Posted at 2020-12-27

個人的なメモであります

コントローラーメソッド

メソッド名 説明
generateUrl() ルート名からURLを生成
forward( ) 指定した名前のコントローラーへ処理を引き渡しその結果を取得
redirect( ) 指定したURLヘHTTPリダイレクトするレスポンスを生成
redirectToRoute()     リダイレクト先をルート名で指定してHTTPリダイレクトレスポンスを生成
addFlash( )      種類と文字列を指定してflashメッセージを登録
isGranted( ) 指定したロールを現在の認証ユーザが保持しているかどうかをチェック
denyAccessUnlessGranted( ) 指定したロールを現在の認証ユーザが保持していない場合アクセス拒否、レスポンスを例外としてスロー
renderView( ) テンプレートをレンダリングしその結果を取得
render( ) テンプレートをレンダリングして、それが格納されたResponseオブジェクトを取得
stream( ) ストリーム機能を使ってテンプレートを遅延レンダリングするResponseオブジェクトを取得する
createNotFoundException() Not Found のレスポンスを例外としてスロー
CreateAccessDeniedException( ) アクセス拒否レスポンスを例外としてスロー
createForm( ) FormTypeを指定してフォームオブジェクトを取得
createFormBuilder( ) FormBuilderオブジェクトを取得
getRequest() 現在のRequest オブジェクトを取得す
getDoctrine( ) Doctrine のレジストリオブジェクトを取得
getUser( ) 現在の認証ユーザオブジェクトを取得
has( ) サービスコンテナのhas( ) メソッドを呼び出す
get( ) サービスコンテナのget( ) メソッドを呼び出す
getParameter( ) サービスコンテナのgetParameter( )メソッドを呼び出す
IsCsrfTokenValid() CSRFトークンの有効性をチェック

Twigテンプレートメソッド

メソッド名 説明
autoescape ブロックに対して個別にエスケープを設定
block 継承関係にあるテンプレートとブロックを共有する
do {{...}}と同様に式の評価を行うが、出力はしない<
embed 他のテンプレートファイルを埋め込む(include の機能に加えてextendsのようにブロック単位で上書き可能
extends 指定したテンプレートファイルの継承を宣言
filter ブロックに対して任意のフィルタを適用
flush 出力バッファをフラッシュする
for ループ処理を実行する
form マクロを読み込む(import の別記法)
if 条件分岐を実行する
import マクロを読み込む
sandbox includeで読み込むテンプレートにサンドボックスモードを適用する
set 変数に値を代入する
include 指定したテンプレートファイルの内容を読み込む
macro マクロ(再利用可能なテンプレート部品)を定義する
spaceless HTMLタグ間の空白文字を削除(HTML内やテキスト内の空白文字ではない)
use extendsを使用しているテンプレートにさらに他のテンプレーファイルからブロックを読み込む
verbatim ブロック内をパースせず生テキストとして出力する

拡張タグ

メソッド名 説明
form_theme 指定したフォームに対してカスタマイズしたテーマをセットする
trans 翻訳を適用して返す
transchoice 選択肢に翻訳を適用して返す
trans_default_domain 翻訳に利用するデフォルトのドメインを設定する
stopwatch タグ内のコードの実行時間を計測してプロファイラに表示

Fromメソッド

メソッド名 説明
form フォーム全体をレンダリング
form_start フォームの開始タグをレンダリング
form_end フォームの終了タグをレンダリング
form_label フォームの個別フィールドのラベルをレンダリング
form_errors フォームのエラーをレンダリング
form_widget フォームの個別フィールドのウィジェットをレンダリング
form_row フォームの個別フィールド全体をレンダリング
form_rest フォームでまだレンダリングされていないフィールドをすべてレンダリング
form_enctype フォームのenctypeをレンダリング
render Controller 関数と合わせて使い、指定したコントローラの結果をレンダリング
render_esi renderと同様で、結果をESI機能で埋め込む
controller コントローラを指定
asset 指定したパスに対応する、アセットのパスを返す
asset_version アセットのバージョンを返す
csrf_token CSRFトークンを生成して返す
is_granted 認証ユーザのロールをチェック
logout_path 設定されたログアウトパスを返す

FormType

フォームタイプ 説明
text input type="text"
textarea input type="textarea"
email input type="email"
integer input type="integer"
password input type="password"
search input type="search"
percent テキスト入力と%記号
choice radio, checkbox, select
entity エンティティー覧の選択肢 (radio、checkbox、select)
kanguage 言語オード一覧 (radio、checkbox、select)
date 日付(単一テキスト、 複数テキスト、複数のselect、またはHTML5の日付ウィジェット)
datetime 日時(単一テキスト、 複数テキスト、複数のselect、またはHTML5の日付ウィジェット)
file ファイル(file)
collection コレクションを扱う場合に利用するフィールド
submit 送信ボタン(submit)

DoctrineのQueryBuilderメソッド

メソッド名 説明
expr( ) クエリパーツを組み立てるExprオブジェクトを取得
getType( ) 現在のクエリの種類を取得
getEntityManager( ) 関連づけられているエンティティマネージャを取得
getState( ) クエリビルダの変更状態を取得
getDQL( ) 現在のクエリビルダの内容からDQL文を取得
getQuery( ) 現在のクエリビルダの内容からクエリオブジェクトを取得
getRootAlias( ) クエリの起点となっているエンティティのエイリアスを取得
setParameter( ) クエリのパラメータを設定する
getParameter( ) 現在のクエリビルダに設定された特定のパラメータの値を取得
setMaxResults( ) 取得するレコードの件数を設定
getMaxResults( ) 取得するレコードの件数設定を取得
add( ) 種類を指定してクエリのパーツを追加
select( ) クエリで取得するエンティティを指定
distinct( ) DISTINCT(重複レコードを除外する)かどうかを設定
addSelect( ) クエリで取得するエンティティを追加
delete( ) DELETEクエリに設定
update( ) UPDATEクエリに設定
indexBy( ) コレクションのインデックスに利用するフィールドを指定して取得
join() クエリでJOINして取得するエンティティを指定
innerJoin( ) クエリでINNER JOINして取得するエンティティを指定
leftJoin( ) クエリでLEFT JOINして取得するエンティティを指定
set( ) 更新クエリで更新するフィールドと値を指定
where( ) クエリのWHERE句を指定
andWhere( ) クエリのWHERE句の条件をANDで追加
orWhere( ) クエリのWHERE句の条件をORで追加
groupBy( ) クエリの GROUP BY句の条件を指定
addGroupBy( ) クエリのGROUP BY句の条件を追加で指定
having( ) クエリのHAVING句の条件を指定
andHaving( ) クエリのHAVING句の条件をANDで追加
orderBy() クエリの結果の並び順を指定
addOrderBy( ) クエリの結果の並び順を追加で指定
getDQLpart( ) 現在のクエリビルダから指定した種類のDQLパーツを取得
resetDQLpart( ) 現在のクエリビルダから特定のDQLパーツをリセット

アノテーション

アノテーション 説明
@ORM\Column クラスのプロパティをDBテーブルのカラムとマッピング
@ORM\ColumnResult ネイティブSQLクエリの結果でスカラ値のマッピングを指定
@ORM\Cache キャッシュ方法を指定する
@ORM\ChangeTrackingPolicy エンティティの変更追跡方法を指定する
@ORM\DiscriminatorColumn Doctrine の継承を利用する場合の基底クラスで、サブクラスの識別名を保存するカラムを指定
@ORM\DiscriminatorMap Doctrine の継承を利用する場合の基底クラスで、サブクラスの識別名とエンティティクラス名との対応を指定
@ORM\Entity クラスをエンティティとして利用するよう指示
@ORM\EntityResult ネイティブSQLクエリの結果でエンティティへのマッピングを指定
@ORM\FieldResult ネイティブSQLクエリの結果でエンティティのフィールドへのマッピングを指定
@ORM\GeneratedValue エンティティのIDの生成方法を指定
@ORM\HasLifecycleCallbacks エンティティでライフサイクルコールバックを有効にする
@ORM\Index エンティティの対応するテーブルで、DBのインデックス定義を指定
@ORM\ld エンティティの識別子となるプロパティを指定
@ORM\InheritanceType Doctrine の継承を利用する場合、継承の種類を指定
@ORM\JoinColumn 関連を持ったエンティティの取得時にJOINを使う
@ORM\JoinColumns 複合キーの関連を持ったエンティティの取得時にJOINを使う
@ORM\JoinTable 関連エンティティを使った関連先をJOINして取得する
@ORM\ManyToOne 多対一の関連を指定
@ORM\ManyToMany 多対多の関連を指定
@ORM\MappedSuperclass Doctrine の継承を利用する場合、継承の親であることを指示
@ORM\NamedNativeQuery 名前付きのネイティブSQLクエリを定義
@ORM\OneToOne 一対一の関連を指定
@ORM\OneToMany 一対多の関連を指定
@ORM\OrderBy 多対多、一対多の関連先を取得するときの並び順を指定
@ORM\PostLoad ライフサイクルコールバックでエンティティを読み込んだあとに実行されるメソッドを指定
@ORM\PostPersist ライフサイクルコールバックでエンティティが初めてエンティティマネージャの管理下へ登録されたときに実行されるメソッドを指定
@ORM\PostRemove ライフサイクルコールバックでエンティティがエンティティマネージャから削除されたときに実行されるメソッドを指定
@ORM\PostUpdate ライフサイクルコールバックでエンティティの内容の更新が適用されたあとに実行されるメソッドを指定
@ORM\PrePersist ライフサイクルコールバックでエンティティが初めてエンティティマネージャの管理下へ登録される直前に実行されるメソッドを指定
@ORM\PreRemove ライフサイクルコールバックでエンティティがエンティティマネージャから削除される直前に実行されるメソッドを指定
@ORM\PreUpdate ライフサイクルコールバックで エンティティの内容の更新が適用される直前に実行されるメソッドを指定
@ORM\SequenceGenerator エンティティのIDの生成方法にSEQUENCEを指定している場合に利用するシーケンスを指定
@ORM\SqlResultSetMapping ネイティブSQLクエリの結果のマッピングを定義
@ORM\Table クラスをDBのテーブルとマッピング
@ORM\UniqueConstraint エンティティの一意性制約を指定
@ORM\Version ロックに使うバージョン値を保持するプロパティを指示
1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3