[{"data":1,"prerenderedAt":430},["ShallowReactive",2],{"navigation-ja":3,"navigation-v1":81,"\u002Fja\u002Fscreencasts":146,"\u002Fja\u002Fscreencasts-surround":298,"\u002Fja\u002Fscreencasts-og":301},[4,55,77],{"title":5,"path":6,"stem":7,"children":8},"ガイド","\u002Fja\u002Fguide","ja\u002F1.guide\u002F01.index",[9,11,15,19,23,27,31,35,39,43,47,51],{"title":10,"path":6,"stem":7},"イントロダクション",{"title":12,"path":13,"stem":14},"プロローグ","\u002Fja\u002Fguide\u002Fprologue","ja\u002F1.guide\u002F00.prologue",{"title":16,"path":17,"stem":18},"はじめに","\u002Fja\u002Fguide\u002Fgetting-started","ja\u002F1.guide\u002F02.getting-started",{"title":20,"path":21,"stem":22},"モデル","\u002Fja\u002Fguide\u002Fmodels","ja\u002F1.guide\u002F03.models",{"title":24,"path":25,"stem":26},"リレーション","\u002Fja\u002Fguide\u002Frelationships","ja\u002F1.guide\u002F04.relationships",{"title":28,"path":29,"stem":30},"フック","\u002Fja\u002Fguide\u002Fhooks","ja\u002F1.guide\u002F05.hooks",{"title":32,"path":33,"stem":34},"検索","\u002Fja\u002Fguide\u002Fsearch","ja\u002F1.guide\u002F06.search",{"title":36,"path":37,"stem":38},"バッチ操作","\u002Fja\u002Fguide\u002Fbatch-operations","ja\u002F1.guide\u002F07.batch-operations",{"title":40,"path":41,"stem":42},"クエリパラメータ","\u002Fja\u002Fguide\u002Fquery-parameters","ja\u002F1.guide\u002F08.query-parameters",{"title":44,"path":45,"stem":46},"セキュリティ","\u002Fja\u002Fguide\u002Fsecurity","ja\u002F1.guide\u002F09.security",{"title":48,"path":49,"stem":50},"レスポンス","\u002Fja\u002Fguide\u002Fresponses","ja\u002F1.guide\u002F10.responses",{"title":52,"path":53,"stem":54},"仕様書","\u002Fja\u002Fguide\u002Fspecifications","ja\u002F1.guide\u002F11.specifications",{"title":56,"path":57,"stem":58,"children":59},"TypeScript SDK","\u002Fja\u002Ftypescript-sdk","ja\u002F2.typescript-sdk\u002F01.index",[60,61,64,68,71,74],{"title":10,"path":57,"stem":58},{"title":16,"path":62,"stem":63},"\u002Fja\u002Ftypescript-sdk\u002Fgetting-started","ja\u002F2.typescript-sdk\u002F02.getting-started",{"title":65,"path":66,"stem":67},"設定","\u002Fja\u002Ftypescript-sdk\u002Fconfiguration","ja\u002F2.typescript-sdk\u002F03.configuration",{"title":20,"path":69,"stem":70},"\u002Fja\u002Ftypescript-sdk\u002Fmodels","ja\u002F2.typescript-sdk\u002F04.models",{"title":24,"path":72,"stem":73},"\u002Fja\u002Ftypescript-sdk\u002Frelationships","ja\u002F2.typescript-sdk\u002F05.relationships",{"title":40,"path":75,"stem":76},"\u002Fja\u002Ftypescript-sdk\u002Fquery-parameters","ja\u002F2.typescript-sdk\u002F06.query-parameters",{"title":78,"path":79,"stem":80},"スクリーンキャスト","\u002Fja\u002Fscreencasts","ja\u002Fscreencasts",[82,125],{"title":83,"path":84,"stem":85,"children":86},"Guide","\u002Fv1.x\u002Fguide","v1.x\u002F1.guide\u002F01.index",[87,89,93,97,101,105,109,113,117,121],{"title":88,"path":84,"stem":85},"Introduction",{"title":90,"path":91,"stem":92},"Getting Started","\u002Fv1.x\u002Fguide\u002Fgetting-started","v1.x\u002F1.guide\u002F02.getting-started",{"title":94,"path":95,"stem":96},"Models","\u002Fv1.x\u002Fguide\u002Fmodels","v1.x\u002F1.guide\u002F03.models",{"title":98,"path":99,"stem":100},"Relationships","\u002Fv1.x\u002Fguide\u002Frelationships","v1.x\u002F1.guide\u002F04.relationships",{"title":102,"path":103,"stem":104},"Hooks","\u002Fv1.x\u002Fguide\u002Fhooks","v1.x\u002F1.guide\u002F05.hooks",{"title":106,"path":107,"stem":108},"Search","\u002Fv1.x\u002Fguide\u002Fsearch","v1.x\u002F1.guide\u002F06.search",{"title":110,"path":111,"stem":112},"Batch Operations","\u002Fv1.x\u002Fguide\u002Fbatch-operations","v1.x\u002F1.guide\u002F07.batch-operations",{"title":114,"path":115,"stem":116},"Query Parameters","\u002Fv1.x\u002Fguide\u002Fquery-parameters","v1.x\u002F1.guide\u002F08.query-parameters",{"title":118,"path":119,"stem":120},"Security","\u002Fv1.x\u002Fguide\u002Fsecurity","v1.x\u002F1.guide\u002F09.security",{"title":122,"path":123,"stem":124},"Responses","\u002Fv1.x\u002Fguide\u002Fresponses","v1.x\u002F1.guide\u002F10.responses",{"title":56,"path":126,"stem":127,"children":128},"\u002Fv1.x\u002Ftypescript-sdk","v1.x\u002F2.typescript-sdk\u002F01.index",[129,130,133,137,140,143],{"title":88,"path":126,"stem":127},{"title":90,"path":131,"stem":132},"\u002Fv1.x\u002Ftypescript-sdk\u002Fgetting-started","v1.x\u002F2.typescript-sdk\u002F02.getting-started",{"title":134,"path":135,"stem":136},"Configuration","\u002Fv1.x\u002Ftypescript-sdk\u002Fconfiguration","v1.x\u002F2.typescript-sdk\u002F03.configuration",{"title":94,"path":138,"stem":139},"\u002Fv1.x\u002Ftypescript-sdk\u002Fmodels","v1.x\u002F2.typescript-sdk\u002F04.models",{"title":98,"path":141,"stem":142},"\u002Fv1.x\u002Ftypescript-sdk\u002Frelationships","v1.x\u002F2.typescript-sdk\u002F05.relationships",{"title":114,"path":144,"stem":145},"\u002Fv1.x\u002Ftypescript-sdk\u002Fquery-parameters","v1.x\u002F2.typescript-sdk\u002F06.query-parameters",{"id":147,"title":78,"body":148,"description":292,"extension":293,"links":294,"meta":295,"navigation":182,"path":79,"seo":296,"stem":80,"__hash__":297},"docs_ja\u002Fja\u002Fscreencasts.md",{"type":149,"value":150,"toc":277},"minimark",[151,162,168,171,174,183,187,190,193,196,199,202,206,216,219,223,226,229,233,236,239,243,246,249,252,255,258,262,265,268,271,274],[152,153,154,161],"p",{},[155,156,160],"a",{"href":157,"rel":158},"https:\u002F\u002Ftwitter.com\u002FLukeDiebold",[159],"nofollow","@Luke Diebold","氏が、Orion for Laravelの幅広い機能を扱うスクリーンキャストのシリーズを制作しています。多大な尽力に心より感謝します❤️",[152,163,164],{},[165,166,167],"em",{},"注意: このシリーズは継続中です。新しいエピソードは公開され次第、随時追加されます。",[169,170,16],"h2",{"id":16},[152,172,173],{},"Orion for Laravelとは何か、何ができるのか。Orion for Laravelスクリーンキャストシリーズの導入エピソードで確認していきましょう。",[175,176],"iframe",{"width":177,"height":178,"src":179,"frameBorder":180,"allow":181,"allowFullScreen":182},560,315,"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fx3h6HwQNN38","0","accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",true,[169,184,186],{"id":185},"プロジェクトのセットアップと基本的なcrud","プロジェクトのセットアップと基本的なCRUD",[152,188,189],{},"このエピソードでは、Lukeがプロジェクトのセットアップ、Sanctumの設定、そしてPostモデルを管理する最初のREST APIの作成を解説します。",[175,191],{"width":177,"height":178,"src":192,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FeVvxLvkeXUM",[169,194,195],{"id":195},"マイグレーションとモデルの準備",[152,197,198],{},"検索機能に入る前に、モデルとマイグレーションを準備する必要があります。このエピソードでは、Orionの強力な検索機能を試すための準備として必要な手順をすべて解説します。",[175,200],{"width":177,"height":178,"src":201,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FcqnhEHu9qJg",[169,203,205],{"id":204},"検索-キーワード検索","検索 - キーワード検索",[152,207,208,209,215],{},"利用できる検索オプションのひとつがキーワード検索です。一般的な検索バーと同様に、指定した属性の",[165,210,211],{},[212,213,214],"strong",{},"いずれか","に指定キーワードが一致するモデルを検索できます。",[175,217],{"width":177,"height":178,"src":218,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fq6ZPW8iw4ks",[169,220,222],{"id":221},"検索-フィルタ","検索 - フィルタ",[152,224,225],{},"モデルを検索するもうひとつの方法がフィルタの利用です。Eloquentクエリをフロントエンド側で書くようなものと考えてください。",[175,227],{"width":177,"height":178,"src":228,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FIrvQCB7FMUk",[169,230,232],{"id":231},"検索-ソート","検索 - ソート",[152,234,235],{},"検索クエリを実行する際には、結果をソートすることもできます。その方法を見ていきましょう。",[175,237],{"width":177,"height":178,"src":238,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FPibHcj3EwlQ",[169,240,242],{"id":241},"検索-スコープ","検索 - スコープ",[152,244,245],{},"検索を行う際には、さらに一歩進んで、スコープを活用することでAPIをよりシンプルで保守しやすいものにできます。",[175,247],{"width":177,"height":178,"src":248,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002Fdxo6ZYF8B0Y",[169,250,251],{"id":251},"ペジネーション",[152,253,254],{},"このエピソードでは、Lukeがペジネーションのメタデータと、それをフロントエンドでペジネーションリンクを構築するために活用する方法を解説します。",[175,256],{"width":177,"height":178,"src":257,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F6_Akr_ldKCQ",[169,259,261],{"id":260},"ソフトデリートlaravel","ソフトデリート(Laravel)",[152,263,264],{},"Orion for Laravel固有のソフトデリート機能に入る前に、Laravel自体でのソフトデリートの仕組みをおさらいしましょう。",[175,266],{"width":177,"height":178,"src":267,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F548pfXfgQWk",[169,269,270],{"id":270},"ソフトデリート",[152,272,273],{},"Laravelでのソフトデリートの仕組みを十分に理解できたところで、APIを通じてソフトデリートを扱うために利用できるオプションを見ていきましょう。",[175,275],{"width":177,"height":178,"src":276,"frameBorder":180,"allow":181,"allowFullScreen":182},"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FzTQPbcx353Q",{"title":278,"searchDepth":279,"depth":280,"links":281},"",1,2,[282,283,284,285,286,287,288,289,290,291],{"id":16,"depth":280,"text":16},{"id":185,"depth":280,"text":186},{"id":195,"depth":280,"text":195},{"id":204,"depth":280,"text":205},{"id":221,"depth":280,"text":222},{"id":231,"depth":280,"text":232},{"id":241,"depth":280,"text":242},{"id":251,"depth":280,"text":251},{"id":260,"depth":280,"text":261},{"id":270,"depth":280,"text":270},"一連のビデオチュートリアルを通じて、Orion for Laravelの機能を紹介します。","md",null,{},{"title":78,"description":292},"G3mdTU90pzJAzEbcXse_LUL1NXNMSSxQvqEQQoq8wVY",[299,294],{"title":40,"path":75,"stem":76,"description":300,"children":-1},"リレーションのインクルードとソフトデリートの扱い方について学びます。",{"id":302,"title":303,"body":304,"description":424,"extension":293,"links":294,"meta":425,"navigation":182,"path":426,"seo":427,"stem":428,"__hash__":429},"docs_en\u002Fscreencasts.md","Screencasts",{"type":149,"value":305,"toc":412},[306,312,317,320,323,325,329,332,334,338,341,343,347,356,358,362,365,367,371,374,376,380,383,385,389,392,394,398,401,403,407,410],[152,307,308,311],{},[155,309,160],{"href":157,"rel":310},[159]," is creating a series of screencasts that cover a wide range of Orion for Laravel features. Huge thanks for all the effort put into this ❤️",[152,313,314],{},[165,315,316],{},"NOTE: this is an ongoing series - more episodes will be added as soon as they become available.",[169,318,88],{"id":319},"introduction",[152,321,322],{},"What is Orion for Laravel? What can it do? Let's find out in this introductory episode to the series of Orion for Laravel screencasts.",[175,324],{"width":177,"height":178,"src":179,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,326,328],{"id":327},"project-setup-and-basic-crud","Project setup and basic CRUD",[152,330,331],{},"In this episode, Luke walks you through the project setup, Sanctum configuration, and your first REST API for managing Post models.",[175,333],{"width":177,"height":178,"src":192,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,335,337],{"id":336},"preparing-migrations-and-models","Preparing migrations and models",[152,339,340],{},"Before diving into the search functionality, we need to prepare our models and migrations. The episode covers all the necessary steps to get you ready for exploring Orion's search magic :)",[175,342],{"width":177,"height":178,"src":201,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,344,346],{"id":345},"search-keyword-search","Search - keyword search",[152,348,349,350,355],{},"One of the available search options is keyword search. It allows you to look up models that match a provided keyword in ",[165,351,352],{},[212,353,354],{},"any"," of the specified attributes, similar to what a typical search bar does.",[175,357],{"width":177,"height":178,"src":218,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,359,361],{"id":360},"search-filters","Search - filters",[152,363,364],{},"Another way of searching for models is to use filters. Think of it as writing an Eloquent query, but on the frontend side.",[175,366],{"width":177,"height":178,"src":228,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,368,370],{"id":369},"search-sorting","Search - sorting",[152,372,373],{},"When performing a search query, you can also sort the results. Let's take a look at how you can accomplish that, shall we? :)",[175,375],{"width":177,"height":178,"src":238,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,377,379],{"id":378},"search-scopes","Search - scopes",[152,381,382],{},"When doing a lookup, you can take it one step further, and make the API even simpler and more maintainable by utilizing scopes.",[175,384],{"width":177,"height":178,"src":248,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,386,388],{"id":387},"pagination","Pagination",[152,390,391],{},"In this episode Luke walks you through the pagination meta data and how you can use it for building pagination links on the frontend.",[175,393],{"width":177,"height":178,"src":257,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,395,397],{"id":396},"soft-deletes-laravel","Soft Deletes (Laravel)",[152,399,400],{},"Before jumping into Soft Deletes functionality specific to Orion for Laravel, let's review how Soft Deletes work in Laravel itself.",[175,402],{"width":177,"height":178,"src":267,"frameBorder":180,"allow":181,"allowFullScreen":182},[169,404,406],{"id":405},"soft-deletes","Soft Deletes",[152,408,409],{},"Now, when we have a clear understanding of how Soft Deletes work in Laravel, we can explore the available options on how to work with them via the API.",[175,411],{"width":177,"height":178,"src":276,"frameBorder":180,"allow":181,"allowFullScreen":182},{"title":278,"searchDepth":279,"depth":280,"links":413},[414,415,416,417,418,419,420,421,422,423],{"id":319,"depth":280,"text":88},{"id":327,"depth":280,"text":328},{"id":336,"depth":280,"text":337},{"id":345,"depth":280,"text":346},{"id":360,"depth":280,"text":361},{"id":369,"depth":280,"text":370},{"id":378,"depth":280,"text":379},{"id":387,"depth":280,"text":388},{"id":396,"depth":280,"text":397},{"id":405,"depth":280,"text":406},"Explore the features of Orion for Laravel through a series of video tutorials.",{},"\u002Fscreencasts",{"title":303,"description":424},"screencasts","dwEUO_ZsahF-7DFeXka7MCLbkHRbm-X34bSZHPE3Df0",1784394457693]