Answer the question
In order to leave comments, you need to log in
Why is there no class instantiation in ASP MVC C# when adding an entry?
There is a code
public ActionResult Create()
{
return View();
}
[HttpPost]
public ActionResult Create(Movie newMovie)
{
if (ModelState.IsValid)
{
db.AddToMovies(newMovie);
db.SaveChanges();
return RedirectToAction("Index");
}
else
{
return View(newMovie);
}
}
using System;
using System.Linq;
using System.Collections.Generic;
using System.Web.Mvc;
using MvcModels.Models;
namespace MvcModels.Controllers
{
public class HomeController : Controller
{
// ...
public ActionResult CreateUser()
{
return View(new User());
}
[HttpPost]
public ActionResult CreateUser(User model)
{
return View("Index", model);
}
}
}
<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
use app\models\EntryForm;
class SiteController extends Controller
{
// ...existing code...
public function actionEntry()
{
$model = new EntryForm();
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
// valid data received in $model
// do something meaningful here about $model ...
return $this->render('entry-confirm', ['model' => $model]);
} else {
// either the page is initially displayed or there is some validation error
return $this->render('entry', ['model' => $model]);
}
}
}
Answer the question
In order to leave comments, you need to log in
public ActionResult Create()
{
// Создавать здесь новый инстанс безполезно, поскольку мы сразу же уходим в рендер
return View();
}
[HttpPost]
// Новый инстанс класса Movie будет создан перед вызовом этого метода автоматически
public ActionResult Create(Movie newMovie)
{
// Здесь вы узнаете все ли поля правильно замаплены
if (ModelState.IsValid)
{
db.AddToMovies(newMovie);
db.SaveChanges();
// Если все верно идем дальше
return RedirectToAction("Index");
}
else
{
// Если есть ошибки, то открываем заново, но с предедыдущими данными
return View(newMovie);
}
}
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question