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
February 27, 2016
Technology
0
1.1k
Symfonyで作る検索フォーム
polidog
February 27, 2016
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社が受託開発に力を入れる理由
polidog
0
71
小さな開発会社を作った理由
polidog
1
2.9k
小さな開発会社がWebサービスを作る理由
polidog
1
660
トランザクションスクリプトは何がダメなのか?
polidog
2
3.6k
React初心者がHooksを理解するためにコードを読んでみた
polidog
0
540
object-mapperを作ってる話
polidog
0
340
2020年から始めるSymfonyフレームワーク
polidog
2
1.3k
はじめてのモダンPHP
polidog
0
640
ソフトウェア設計は難しくない
polidog
3
1k
Other Decks in Technology
See All in Technology
Datasets for Critical Operations by Dataform
kimujun
0
120
株式会社島津製作所_研究開発(集団協業と知的生産)の現場を支える、OSS知識基盤システムの導入
akahane92
1
1.3k
Railsの限界を超えろ!「家族アルバム みてね」の画像・動画の大規模アップロードを支えるアーキテクチャの変遷
ojima_h
4
520
クマ×共生 HACKATHON - 熊対策を『特別な行動」から「生活の一部」に -
pharaohkj
0
220
人と生成AIの協調意思決定/Co‑decision making by people and generative AI
moriyuya
0
190
LLMでAI-OCR、実際どうなの? / llm_ai_ocr_layerx_bet_ai_day_lt
sbrf248
0
260
robocopy の怖い話/scary-story-about-robocopy
emiki
0
410
大規模イベントを支える ABEMA の アーキテクチャ 変遷 2025
nagapad
5
540
分散トレーシングによる コネクティッドカーのデータ処理見える化の試み
thatsdone
0
270
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
270
Power Automate のパフォーマンス改善レシピ / Power Automate Performance Improvement Recipes
karamem0
0
270
生成AIによる情報システムへのインパクト
taka_aki
1
200
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
BBQ
matthewcrist
89
9.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Being A Developer After 40
akosma
90
590k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.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͕ൃੜ͢Δ߹Ͳ͏͠Α͏ɾɾɾ
ϝϦοτ σϝϦοτ
͜ΕΑΓྑ͍࣮ํ๏͋ͬͨ Βڭ͍͑ͯͩ͘͞ɻ
͓͠·͍ɻ