【Laravel入門】Formの書き方

前回の記事「効率よくLaravelを勉強する方法」でお話したことについて、今回は少し掘り下げてお話していきます。

具体的には、「勉強すべき順序」についてのお話です。

「作る」部分について優先的に勉強しましょうという旨のお話をしましたが、その「作る」部分の中でも様々な機能があります。

その様々な機能の中で、Webアプリケーションで必須と言っても過言ではないフォームについて今回はお話していきます。

未経験からWebエンジニアへ転職したい人は、ぜひこちらの記事も合わせてご活用ください。
>>【現役Webエンジニアが解説】未経験からWebエンジニアに転職する方法

独学がつらいと感じているあなたへ

TechAcademyなら、1週間無料でプログラミングスクールの体験をオンラインで受けることが可能。

この無料期間にわからない部分の質問をするのもいいですし、プログラミングスクールの雰囲気も体験できるので、いい刺激になりますよ。

目次

HTMLタグを使ったフォームの書き方

フォームの書き方には何種類かあります。

まずはその中でも一番簡単なHTMLタグを使った書き方を見てみましょう。

<form method="post" action="test.php">
  <input type="text" name="inputbox">
  <input type="submit" class="submit-btn" value="登録">
</form>

Webについて少し勉強している方なら簡単に理解できるかと思います。

formのデータはtest.phpへとPOSTされるという動作になります。

Laravelにおけるフォームの書き方

では、次にLaravelではどう書くのでしょうか。

前回の記事でご紹介した「はじめてのLaravel5.6」ではこのように表現されてます。

{!! Form::open(['url' => 'test']) !!}
{!! Form::text('inputbox',null) !!}
{!! Form::submit('登録', ['class' => 'submit-btn']) !!}
{!! Form::close() !!}

HTMLで書いたものとかなり違いますね。

でも、実際ブラウザで表示させてみると、HTMLで書いたものと同じになります。

初めてフレームワークに触れる方はこの書き方になかなか慣れないと思います。

私もまだ全然慣れてなくて、出てくる度に意味を調べながら書いてます(笑)

ちなみに、この書き方は「LaravelCollective」というパッケージを使った書き方になります。

Laravelにおける表現方法の法則を見つける

この4行だけのコードだけではわかりづらいかもしれませんが、「はじめてのLaravel5.6」を進めていると表現方法の法則性が見えてきます。

例えば、変数を別メソッドに渡す時、通常のPHPではメソッド名($変数名)のように記述してましたが、Laravelの場合メソッド名(‘変数名’)といった記述で表現されています。

また、メソッドに引数を渡す時は[ ]で囲って表現されています。

このフォームを表現するコードを見てみると、openとcloseで囲まれているのは<form></form>にあたるのだとわかりますし、[‘url’ => ‘test’]はPOST先のURLを示しているんだとわかります。

つまり、openメソッドを呼び出して、引数でPOST先を指定することによってそこからHTMLタグに変換してるんだと予測ができます。

このような感じで、一見訳がわからないような記述でも、一度ブラウザに表示してHTMLと見比べてみることで法則性を見つけてそこから理解へと落とし込むことができます。

最後に

このフォームの記述方法は学び始めたばかりの人にとって1つの鬼門になるんじゃないかなと勉強していて感じました。私もまだ結構理解が怪しいです(汗)

ぱっと見では確かに複雑に見えて全然わかりませんが、表示されたものとコードを見比べることで仕組みを理解することができるので、諦めずに頑張りましょう!

学生ならPrime Studentがお得!

もし、あなたが学生ならを使うことで、参考書を実質10%OFFでお得に買うことができます。

とは、通常会費の半額の月額250円で、Amazonプライム会員と同じサービスを受けることができるようになるサービスです。

しかも、には通常のプライム会員とは別に、

  • Adobe Creative Cloudが5%OFF
  • Microsoft365 Personalが5%OFF
  • Jabraワイヤレスイヤホンが最大4,000円OFF

などの特典が盛りだくさん!

学生のうちにしか受けることができないサービスなので、このチャンスを逃さないようにしてください。

>> Prime Studentをチェック

よかったらシェアしてね!
目次
閉じる