~/talk

Abusing Laravel for Fun and Profit

Talkat Laracon AU 2018 · 2018-10-18..10-19· [laravel, developer-experience]
slides:none on file

Four concrete Laravel techniques: use the pipeline filters pattern to move request-driven query constraints into middleware-like classes so paginated invoice lists stay composable; reuse database seeders as rich test fixtures to make feature tests short and reproducible; attach data-access traits to form request objects to encapsulate invoice queries and pagination (used in PushSilver); and store cron expressions plus time zones on models and leverage the managesFrequencies trait with the Laravel scheduler to dispatch per-model jobs reliably.

AI-written summary · about

  1. 0:00Intro
  2. 1:36DADS IN DEV
  3. 1:47FORGE
  4. 2:23Confession Time.
  5. 9:27Let's refactor InvoiceController
  6. 12:04FRONT-END FILTERS USING PIPELINES
  7. 12:24FEATURE TESTS POWERED BY DATABASE SEEDERS
  8. 19:16FORM REQUESTS FOR DATABASE ACCESS
  9. 19:34Straight Eloquent Calls in the Controller
  10. 20:13The Repository Pattern & Service Classes
  11. 21:09Data-Access Traits
  12. 22:53Stick them on Form Request objects
  13. 28:10OK (2 test, 2 assertions)
  14. 28:57SCHEDULING MODELS WITH LARAVEL SHEDULER
  15. 32:01Polymorphism
  16. 33:14Laravel Already Has A Built-in Way To Schedule Jobs
  17. 35:01Back to the original problem.
  18. 37:26Generating Cron Strings Using Dirty Hacks
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.