продолжайте получать ошибку при сохранении данных в базу данных в laravel - PullRequest
0 голосов
/ 29 февраля 2020

Я использую laravel ver "laravel/framework": "5.8.*" Я хочу сохранить данные в базе данных с запросом поста, и мои данные поста

Я искал много тем, но не могу получить какую-либо информацию по этому вопросу c topi c. Если кто-то может, это будет очень полезно для меня. Я видел свои предыдущие коды, они этот тип кода в laravel, но они работают хорошо, почему это не сохраняет и не выдает ошибку.

{
       "userID": 11,
      "fullname": "dharmendra shah",
      "fatherName": "manohar shah",
      "Mothername": "manorama devi",
      "dobdate": "21",
      "dobmonth": "August",
      "dobYear": "1999",
      "caste": "OBC",
      "casteCertificateIs": "state",
      "emailAddress": "dharmonly1999@gmail.com",
      "gender": "Male",
      "handiCappedStatus": "Not handicapped",
      "nationality": "india",
      "state": "Rajasthan",
      "district": "bikaner",
      "tahsil": null,
      "village": "NA",
      "maritalStatus": "UnMarried",
      "spouseName": null,
      "children": null
}

В laravel маршрут мой контроллер:

 public function store(Request $request)
{
    $this->validate($request, [
        'fullname' => 'required|max:25',
        'fatherName' => 'required|max:25',
        'Mothername' => 'required|max:25',
        'dobdate' => 'required',
        'dobmonth' => 'required',
        'dobmonth' => 'required',
        'dobYear' => 'required',
        'caste' => 'required',
        'casteCertificateIs'=>'required',
        'emailAddress' => 'required|email',
        'gender' => 'required',
        'handiCappedStatus' => 'required',
        'nationality' => 'required',
        'state' => 'required',
        'district' => 'required',
        'block' => 'sometimes|max:20',
        'tahsil' => 'sometimes|max:20',
        'village' => 'sometimes|max:20',
        'maritalStatus' => 'required',
        'spouseName' => 'sometimes|max:20',
        'children' => 'sometimes|max:5|integer'
    ]);

    $userInformationSave = new BauserInformation([
        'userID' => \Auth::user()->id,
        'fullname' => $request->get('fullname'),
        'fatherName' => $request->get('fatherName'),
        'Mothername' => $request->get('Mothername'),
        'dobdate' => $request->get('dobdate'),
        'dobmonth' => $request->get('dobmonth'),
        'dobYear' => $request->get('dobYear'),
        'caste' => $request->get('caste'),
        'casteCertificateIs' => $request->get('casteCertificateIs'),
        'emailAddress' => $request->get('emailAddress'),
        'gender' => $request->get('gender'),
        'handiCappedStatus' => $request->get('handiCappedStatus'),
        'nationality' => $request->get('nationality'),
        'state' => $request->get('state'),
        'district' => $request->get('district'),
        'block' => $request->get('block'),
        'tahsil' => $request->get('tahsil'),
        'village' => $request->get('village'),
        'maritalStatus' => $request->get('maritalStatus'),
        'spouseName' => $request->get('spouseName'),
        'children' => $request->get('children')
    ]);

    $userInformationSave->save();
       return redirect()->route('home')->with('message', 'Your information is saved now');
}

Модель

class BauserInformation extends Model
{
    protected $table = ['userFinalInformation'];
    protected $fillable = ['userID', 'fullname', 'fatherName', 'Mothername', 'dobdate', 'dobmonth', 'dobYear', 'caste', 'casteCertificateIs', 'emailAddress', 'gender', 'handiCappedStatus', 'nationality', 'state', 'district', 'Block', 'tahsil', 'village', 'maritalStatus', 'spouseName', 'children'];
}

получаемый мной аргумент ошибки

 ErrorException (E_NOTICE)
Array to string conversion

1 Ответ

1 голос
/ 29 февраля 2020

Вы усложняете вещи.

Поверх вашего контроллера поставьте: use Illuminate\Support\Facades\Validator;.

Удалить $userInformationSave.

Подтвердите ввод:

$validator = Validator::make($request->all(), [
    'fullname' => ['required', 'max:25'],
    ... every other input like I have done
]);
if ($validator->fails()) {
    return redirect('/bla bla bla/create')->withErrors($validator);
}

И сохраните модель:

BauserInformation::create($request->all());

РЕДАКТИРОВАТЬ # 1 В вашей модели вы должны объявить таблицу и A_I следующим образом:

protected $table = 'userFinalInformation';
protected $primaryKey = 'userID';

Я думаю, что это сделает работу .

...