Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Symfonyで作る検索フォーム
Search
polidog
PRO
February 27, 2016
Technology
0
1.1k
Symfonyで作る検索フォーム
polidog
PRO
February 27, 2016
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社を作った理由(再)
polidog
PRO
0
92
React Server ComponentsでAPI不要の開発体験
polidog
PRO
1
410
小さな開発会社が受託開発に力を入れる理由
polidog
PRO
0
91
小さな開発会社を作った理由
polidog
PRO
1
3.1k
小さな開発会社がWebサービスを作る理由
polidog
PRO
1
690
トランザクションスクリプトは何がダメなのか?
polidog
PRO
2
3.7k
React初心者がHooksを理解するためにコードを読んでみた
polidog
PRO
0
550
object-mapperを作ってる話
polidog
PRO
0
350
2020年から始めるSymfonyフレームワーク
polidog
PRO
2
1.3k
Other Decks in Technology
See All in Technology
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
490
S3アクセス制御の設計ポイント
tommy0124
3
200
テストを軸にした生き残り術
kworkdev
PRO
0
210
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
260
2025年夏 コーディングエージェントを統べる者
nwiizo
0
170
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
KotlinConf 2025_イベントレポート
sony
1
140
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
310
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
slog.Handlerのよくある実装ミス
sakiengineer
4
290
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
490
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Unsuck your backbone
ammeep
671
58k
Documentation Writing (for coders)
carmenintech
74
5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Raft: Consensus for Rubyists
vanstee
140
7.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Transcript
SymfonyͰ࡞Δ ݕࡧϑΥʔϜ @polidog Symphony Meetup #7
ࣗݾհ • @polidog • λϏΟίϜגࣜձࣾͰSymfonyॻ͍ͯ·͢ • Ξϧίʔϧ͕େ͖Ͱ͢ • ࠷ۙAndroidָ͍͠Ͱ͢
ݕࡧϑΥʔϜͲ͏࡞ͬͯ·͢ ͔ʁ
None
SymfonyͰͷݕࡧϑΥʔϜ • SymfonyͷϑΥʔϜػೳͳΜͯΘͳ͍Αʂ • SymfonyͷϑΥʔϜػೳΛར༻ͯ͠ݕࡧ ϑΥʔϜΛ࡞Δʂ
SymfonyͷFormػೳΛͬ ͨ΄͏͕ศརͰ͢ΑͶɻ
࠷࣮͍ۙͯ͠Δํ๏ͷ αϯϓϧ༻ҙ͠·ͨ͠ɻ https://github.com/polidog/symfony_sample_todo
͜ΕΑΓྑ͍࣮ํ๏͋ͬͨ Βڭ͍͑ͯͩ͘͞ɻ
ϦϙδτϦ ϑΥʔϜ ݕࡧ݅ੜ Ϋϥε ϦϙδτϦʹ͢ ੜ͢Δ
༻͍ͯ͠ΔओͳϥΠϒϥϦ • ϖʔδωʔγϣϯKnpPaginationBundleͰ ߦ͏ • JMSDiExtraBundleΛར༻͍ͯ͠Δ • Domain-kata͍ͬͯ·͢
࣮खॱ 1. ݕࡧ݅Λੜ͢ΔΫϥεΛ༻ҙ͢Δ 2. ݕࡧ༻ͷFormTypeΛ࡞͢Δ 3. ϦϙδτϦʹݕࡧ݅Λੜ͢ΔΦϒδΣΫ τΛͯ͠QueryΦϒδΣΫτΛऔಘ͢Δ 4. ݕࡧϖʔδΛ࡞Δ
1.ݕࡧ݅Λੜ͢Δ ΫϥεΛ༻ҙ͢Δ
ϙΠϯτ • ݕࡧ݅Λੜ͢Δϝιου(build)Λ࣮ • ݕࡧ݅CriteriaΛར༻͢Δ • ϑΝΠϧʮsrc/AppBundle/Search/ TodoListʯͱ͢Δ
2. ݕࡧ༻ͷFormTypeΛ࡞ ͢Δ
ϙΠϯτ • configureOptionͰʮmethod => “GET”ʯΛ ࢦఆ͢Δ • csrf_protectionfalseʹ͓ͯ͘͠
3.ϦϙδτϦʹݕࡧ݅Λ ੜ͢ΔΦϒδΣΫτΛ ͯ͠ɺ QueryΦϒδΣΫτΛ औಘ͢Δ
ϙΠϯτ • ϦϙδτϦʹgetPaginationQuery()ͱ͍͏ϝ ιουΛ࣮ • ൚༻తʹ͑ΔΑ͏ʹTraitͰ࣮͢Δ
4. ݕࡧϖʔδΛ࡞Δ
ϙΠϯτ • ͍ͭ௨ΓϑΥʔϜΛ࣮͢Δ͙Β͍ • ಛʹؾΛ͚ͭΔͳͲͳ͍
·ͱΊ • ݕࡧ݅ΛѲ͍͢͠ • ίϯτϩʔϥͷ࣮͕ബ͘ͳΔ • DBͷΧϥϜ͕ϦϙδτϦͷ֎ʹ͋Δͷ͕ҧ ײΛײ͡Δɻ • Join͕ൃੜ͢Δ߹Ͳ͏͠Α͏ɾɾɾ
ϝϦοτ σϝϦοτ
͜ΕΑΓྑ͍࣮ํ๏͋ͬͨ Βڭ͍͑ͯͩ͘͞ɻ
͓͠·͍ɻ