Я использую Laravel и пытаюсь добавить новое поле выбора в стандартную регистрационную форму Bootstrap. Я не могу получить значение, указанное в поле выбора, для отображения в моей базе данных после отправки формы. Все остальные поля (например, имя пользователя и адрес электронной почты) работают нормально.Добавление поля выбора в форму бутстрапа и его отправку в базу данных в проекте Laravel
Ниже приведена часть кода с удаленными полями для краткости. Все, что я сделал, это добавить поле выбора без изменения кода в других файлах Laravel. БД имеет две таблицы. Один из них называется институтами, который имеет две колонки: «имя» и «instid» (первичный ключ). Другой называется пользователем, который имеет несколько столбцов, один из которых является «instid» (внешний ключ). Это поле внешнего ключа является тем, на которое я хотел бы опубликовать выбранное значение.
Как получить значение, указанное в поле выбора, которое появится в моей базе данных после отправки формы?
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Register</div>
<div class="panel-body">
<form class="form-horizontal" role="form" method="POST" action="{{ url('/register') }}">
{!! csrf_field() !!}
<div class="form-group{{ $errors->has('name') ? ' has-error' : '' }}">
<!-- use for="name" so that clicking on label places cursor in input field with id="name" -->
<label class="col-md-4 control-label" for="name">Name</label>
<div class="col-md-6">
<input type="text" class="form-control" id="name" name="name" value="{{ old('name') }}">
@if ($errors->has('name'))
<span class="help-block">
<strong>{{ $errors->first('name') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">
<div class="form-group">
<label class="col-md-4 control-label" for="instid">Institution</label>
<div class="col-md-6">
<select class="form-control" id="instid" name="instid" required="required">
<option value="" selected disabled>Choose an institution.</option>
<?php
$institutions = App\Institution::all();
foreach($institutions as $institution){
echo "<option value=\"" . $institution->instid . "\">" . $institution->name . "</option>";
}
?>
</select>
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
<i class="fa fa-btn fa-user"></i>Register
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
'Я не могу получить значение, указанное в поле выбора, чтобы показать в моих database' могли бы вы быть так любезны, по крайней мере, указать, какую версию Laravel вы бегаете, показывают соответствующую часть вашего Контроллер (или маршрут, или где бы вы не справились с этим запросом) и показать, как вы отлаживали это в своем контроллере? –
Конечно! Laravel 5. Часть проблемы заключается в том, что я не знал, что мне нужно изменить контроллер. До этого момента Laravel настраивал контроллер самостоятельно. Есть ли команда artisan, которая автоматически обновит контроллеры, когда я добавлю столбец в свою БД? С помощью приведенного ниже предложения Jilson T, я понял код. В ближайшее время я обновлю свою версию решения. – Atlas
Насколько мне известно, я знаю только о функциях 'php artisan make:', касающихся этого (попробуйте 'php artisan help make'). Удачи! –