标签: model-view-controller

MVC验证建议

我目前正在验证输入并在"胖控制器"中返回错误,如下所示:

class SomeController
{
    public function register()
    {
        // validate input
        $username = isset($_POST['username']) && strlen($_POST['username']) <= 20 ? $_POST['username'] : null;

        // proceed if validation passed
        if (isset($username)) {
            $user = $this->model->build('user');
            if ($user->insert($username)) {
                $_SESSION['success'] = 'User created!';
            } else {
                $_SESSION['error'] = 'Could not register user.';
            }
        } else {
            $_SESSION['failed']['username'] = 'Your username cannot be greater than 20 characters.';
        }

        // load appropriate view here
    }
}

class SomeModel
{
    public function insert($username)
    {
        // sql …
Run Code Online (Sandbox Code Playgroud)

php validation error-handling model-view-controller

0
推荐指数
1
解决办法
1542
查看次数

如何将元素添加到null Set <class>?

我有一组自定义类的元素User.现在我简直无法弄清楚,这个类如何实例化.我甚至通过创建另一个对象并从那里拉出EMPTY集来尝试它,如下所示:

Site mySite = new Site(/*some params here*/);
User newUser = new User(/*some other params here*/);
Set<User> users = mySite.getUsers();
users.add(newUser);
mySite.setUsers(users);
Run Code Online (Sandbox Code Playgroud)

但由于mySite.usersnull(不是空的),我当然得到一个NullPointerException.

那么,正确的方法是什么?我会非常感激,希望这不是模糊的!

干杯,Stacky

java model-view-controller null set nullpointerexception

0
推荐指数
2
解决办法
1461
查看次数

模型,视图和控制器之间的连接

我经常搜索并阅读了很多关于MVC概念的内容.但我仍然不知道如何将它们连接在一起.假设我有一个控制器类,视图类和模型类.如果用户在该视图中执行了某些操作,则视图应通知控制器操作,并且控制器可能需要与模型通信以获取某些数据.

  1. 现在,视图是否持有对控制器的引用?控制器是否具有该模型的属性?或者他们只是使用像"包括"?
  2. 数据保存在内存或数据库中?内存意味着存储在变量中.
  3. 更复杂的情况,用户的一个动作可能需要涉及许多控制器和模型.如何协调他们?

我之前做的是创建一个"视图控制器",它具有该视图的视图和一些动作.有时候没有模特.所有数据都通过参数传递.如果有一些模型,其中一些是单身,所以我可以到处获取它.

model-view-controller ios

0
推荐指数
1
解决办法
181
查看次数

有人可以解释一下这个短语"胖模型,瘦的控制器"吗?

我正在学习Ruby on Rails.我注意到这个短语" 胖模型,瘦的控制器 ".我不确定这意味着什么.这是否意味着我必须在模型中使用更多代码,在控制器中使用更少代码?有人可以解释一下吗?

ruby model-view-controller ruby-on-rails

0
推荐指数
2
解决办法
543
查看次数

Python PureMVC vs Pubsub

我正在创建一个python应用程序,我想用MVC实现它.我打算用pubsub来完成这个,但我遇到了PureMVC.

任何人都可以向我解释这两件事,它们之间的区别以及使用这两件事的含义.

python model-view-controller puremvc publish-subscribe

0
推荐指数
1
解决办法
288
查看次数

Ajax路由调用控制器名称两次

我试图通过ajax对我的控制器进行简单的调用.RouteConfig尚未更改并设置为默认值.当我进行ajax调用时,"网络"调试工具中请求的Url是:

'http://localhost:59275/Leaderboard/Leaderboard/GetPosition'
Run Code Online (Sandbox Code Playgroud)

这导致404,因为Controller,Leaderboard被添加到Url中两次.应该是正确的网址

'http://localhost:59275/Leaderboard/GetPosition'
Run Code Online (Sandbox Code Playgroud)

我的ajax电话如下:

  $.ajax({                
            url: 'Leaderboard/GetPosition',
            type: "GET",
            dataType: 'xml',
            success: function (data) {
                $('#results').html(data);;
            }
        });
Run Code Online (Sandbox Code Playgroud)

我的控制器如下:

public class LeaderboardController : Controller
    {
        [Webmethod]
         public static DataTable GetPosition()
         {
             // do stuff
         }


    }
Run Code Online (Sandbox Code Playgroud)

ajax model-view-controller

0
推荐指数
1
解决办法
1303
查看次数

无法从控制器获取数据作为json

我需要从控制器获取数据到View作为JSON格式,但它不起作用,我不明白为什么.

我的控制器(我在索引操作上请求它):

    public class HomeController : Controller
    {
        CompanyTicketsDb _db = new CompanyTicketsDb();

        public ActionResult Index()
        {
            var model =
                _db.Tickets
                    .Select(r => new TicketListViewModel
                    {
                        Id = r.Id,
                        Name = r.Name,
                        Description = r.Description,
                        CompanyName = r.CompanyName,
                        Status = r.Status,
                        CompanyId = r.CompanyId,
                    });
            if (Request.AcceptTypes.Contains("application/json"))
            {
                return Json(model, JsonRequestBehavior.AllowGet );
            } 

            return View(model);
        }
    }
Run Code Online (Sandbox Code Playgroud)

而我的观点(这是局部视图)看起来像是(测试模式):

@model IEnumerable<MvcApplication4.Models.TicketListViewModel>

<button id="Button1">asd</button>

@section scripts {
<script src="~/Scripts/knockout-3.2.0.js"></script>
    <script>
        $(document).ready(function () {
            $("#Button1").click(function (evt) {
                type: 'GET'
                url = '/';
                dataType …
Run Code Online (Sandbox Code Playgroud)

ajax model-view-controller jquery json controller

0
推荐指数
1
解决办法
60
查看次数

ASP.NET MVC为什么视图包含模型的提示?

我是ASP.NET MVC的新手,所以请耐心等待.

我一直认为MVC(在任何语言中)的想法是视图对模型一无所知,反之亦然,并且控制器是将所有东西保持在一起的粘合剂.

现在,当(在Visual Studio 2013/MVC 5中)我通过Add - > New Scaffolded Item添加一个新控制器时,生成的视图包含第一行

@model IEnumerable<MyModelClass>
Run Code Online (Sandbox Code Playgroud)

我知道在编写视图时使IntelliSense工作很好,但是视图不应该是不可知/完全忘记模型吗?

model-view-controller asp.net-mvc

0
推荐指数
1
解决办法
95
查看次数

在Ruby on Rails中定义全局对象的最佳方法

我有一个应用程序,有两个型号类别和产品

产品属于类别.

我创建了一个导航栏下拉列表,要求@category和@product对象在整个应用程序中可用(导航栏显示在应用程序的每个页面上.)

我无法解决的问题是放置这些基本定义的最佳位置,而不是在每个页面定义中多次定义它们.

我需要定义以下内容:

@category = Category.all

@products = @category.products.all
Run Code Online (Sandbox Code Playgroud)

然后导航栏循环看起来像这样.

<% @category.each do |c| %>
  <%= c.name %>
  <% @products.each do |p| %>
    <% link_to product_path(p) do %>
      <%= p.name %>
    <% end %>
  <% end %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

我是一个铁杆新手,所以我相信这里有一些错误,但任何帮助将不胜感激!

ruby model-view-controller ruby-on-rails object

0
推荐指数
1
解决办法
133
查看次数

错误:在删除记录模型余烬时尝试处理事件`didSetProperty`

当我在我的应用程序中删除记录时,我有一个问题,我知道发生这种情况的原因,但我无法解决问题

我在这里转载了这个案子,

我添加一个发票,然后我添加更多的交易.

我删除发票后问题就出现了,这是错误信息

未捕获错误:断言失败:错误:尝试didSetProperty在状态root.deleted.saved中处理事件.使用{name:transactionsAmounts,oldValue:NaN,originalValue:undefined,value:0}调用.

删除发票时,基本上存在错误模型{transactionsAmount}

transactionAmounts是任何单个事务的总和,并在模型中创建

  transactionsAmounts: DS.attr('string'),
  setTransactionAmount : function(){
    if(this.get("transactions.length")>0){
      this.get("transactions").then(function(transactions){
        var sum=0;
        transactions.forEach(function(transaction){
           sum+=transaction.get("total");
        });
        this.set("transactionsAmounts",sum);
      }.bind(this));
    }
  }.observes('transactions.length', 'transactions.@each.total'),
Run Code Online (Sandbox Code Playgroud)

在删除发票的那一刻,不会删除transactionAmount,我怎么能发生这种情况才能删除发票模式(hasMany事务)并且没有得到错误?

javascript model-view-controller ember.js jsbin

0
推荐指数
1
解决办法
2341
查看次数