お疲れ様です。
表題の通りで、PHPのララベルのように、Controllerからビューを返す際に変数を一緒に渡して、
ビューで動的に使用したいです。
★イメージ★
edge
1@layout('layout') 2 3@section('content') 4 <div class="container"> 5 <form action="/login" method="POST"> 6 @if(isset($sample))★こんな感じのことがしたい 7 // ....... 8 @endif 9 <div class="row"> 10 <label for="mail_address">Email address</label> 11 <input type="text" class="form-control" id="mail_address" placeholder="a@a.com" name="mail_address"> 12 </div> 13 <div class="row"> 14 <label for="password">Password</label> 15 <input type="text" class="form-control" id="password" placeholder="" name="password"> 16 </div> 17 <div class="row"> 18 <button type="submit" class="btn btn-primary">Submit</button> 19 </div> 20 </form> 21 </div> 22@endsection
現状、コントローラで処理を行って、ビューに変数を事は渡すことはできるのですが、
それをどのように使用するのか、公式リファレンスでもピンポイントのが載っていません。
コントローラは以下で、正常に動いています。
js
1'use strict' 2 3const User = use("App/Models/User"); 4const View = use('View') 5 6class LoginController { 7 8 async post({ request }) { 9 // 10 var error_message = null; 11 var body = request.post(); 12 var result = User.query().where('mail_address', '=', body.mail_address).where('password', '=', body.password).fetch(); 13 14 if (result.length == 1) { 15 return result; 16 } else { 17 error_message = 'Mailaddress or Password is incorrect.' 18 } 19 20 return View.render('login', { error_message: error_message });// ★こいつを使いたい★ 21 } 22 23} 24 25 26module.exports = LoginController
expressや単純なnode.jsでの記述はたくさんあるのですが、どうフレームワークでは実現したいことへのヒントが見つかりません。
どなたかご教授をお願いします。
あなたの回答
tips
プレビュー