我认为Qt中使用的模型/视图控件的术语是有缺陷的.在他们的解释页面上,他们说,他们通过合并View和Controller将MVC简化为MV,他们给出了以下图片:

不过我认为,他们错误地命名了对象的角色,我认为,
我说的是你在应用程序中使用Qt模型/视图组件的通常和理智的方式.原因如下:
Qt在他们的术语中是错误的,还是只是我不懂的?(顺便说一句:这不是学术问题的原因是我已经开始按照命名开始对我的项目进行编码,我很快就发现,代码显然不对.只有在我意识到之后,我应该不要尝试将模型逻辑放在他们称之为Model的模型中)
在JSF MVC框架中谁是Model,View和Controller?
第一个问题
请问,您能解释一下在MVC中如何实现最简单的ACL.
这是在Controller中使用Acl的第一种方法......
<?php
class MyController extends Controller {
public function myMethod() {
//It is just abstract code
$acl = new Acl();
$acl->setController('MyController');
$acl->setMethod('myMethod');
$acl->getRole();
if (!$acl->allowed()) die("You're not allowed to do it!");
...
}
}
?>
Run Code Online (Sandbox Code Playgroud)
这是一个非常糟糕的方法,它的缺点是我们必须将Acl代码添加到每个控制器的方法中,但我们不需要任何其他依赖项!
接下来的方法是制作所有控制器的方法private并将ACL代码添加到控制器的__call方法中.
<?php
class MyController extends Controller {
private function myMethod() {
...
}
public function __call($name, $params) {
//It is just abstract code
$acl = new Acl();
$acl->setController(__CLASS__);
$acl->setMethod($name);
$acl->getRole();
if (!$acl->allowed()) die("You're not allowed to do it!"); …Run Code Online (Sandbox Code Playgroud) 我Clock在Backbone中有一个模型:
var Clock = Backbone.Model.extend({});
Run Code Online (Sandbox Code Playgroud)
我正在尝试获取具有最新信息的实例/clocks/123.我试过的一些事情:
Clock.fetch(123)
// TypeError: Object function (){ ... } has no method 'fetch'
Run Code Online (Sandbox Code Playgroud)
fetch它:c = new Clock({id: 123})
c.fetch()
// Error: A 'url' property or function must be specified
Run Code Online (Sandbox Code Playgroud)
我尝试创建一个AllClocks集合资源(即使我在页面上没有使用这样的东西):
var AllClocks = Backbone.Collection.extend({
model: Clock,
url: '/clocks/'
});
var allClocks = new AllClocks();
allClocks.fetch(123);
// returns everything from /clocks/
Run Code Online (Sandbox Code Playgroud)
我如何才能获得一个支持API的时钟?
假设我有这个局部视图:
Your name is <strong>@firstName @lastName</strong>
Run Code Online (Sandbox Code Playgroud)
这可以通过仅限儿童的动作来访问:
[ChildActionOnly]
public ActionResult FullName(string firstName, string lastName)
{
}
Run Code Online (Sandbox Code Playgroud)
我想在另一个视图中使用这个局部视图:
@Html.RenderPartial("FullName")
Run Code Online (Sandbox Code Playgroud)
换句话说,我希望能够将firstName和lastName从视图传递到局部视图.我该怎么办?
model-view-controller asp.net-mvc controller asp.net-mvc-partialview asp.net-mvc-3
我一直在阅读很多博客,主张胖模型和瘦控制器方法,尤其是.Rails阵营.因此,路由器基本上只是找出在什么控制器上调用什么方法,并且所有控制器方法都在调用模型上的相应方法然后调出视图.所以我在这里有两个我不明白的问题:
你在哪里划线?这不仅仅是落入神模式吗?
architecture model-view-controller design-patterns god-object
首先,在任何人尖叫之前,我很难总结一个简单的标题.另一个标题可能是"域模型和MVC模型之间有什么区别?" 或"什么是模特?"
从概念上讲,我理解一个Model是视图和控制器使用的数据.除此之外,关于构成模型的内容似乎存在很多不同的意见.什么是域模型,应用模型,视图模型,服务模型等.
例如,在我最近提出的关于存储库模式的问题中,我被告知空白存储库是模型的一部分.但是,我已经阅读了其他意见,即模型应该从持久性模型和业务逻辑层中分离出来.毕竟,是不是存储库模式应该将具体的持久性方法与模型分离?其他人说Domain模型和MVC模型之间存在差异.
我们举一个简单的例子.MVC默认项目中包含的AccountController.我已经阅读了一些意见,其中包含的帐户代码设计不佳,违反了SRP等等.如果要为MVC应用程序设计一个"适当的"成员模型,那会是什么?
您将如何从模型中分离ASP.NET服务(成员资格提供程序,角色提供程序等)?或者你会吗?
我看待它的方式,模型应该是"纯粹的",也许是验证逻辑..但应该与业务规则分开(除了验证).例如,假设您有一条业务规则,说明在创建新帐户时必须通过电子邮件发送某人.在我看来,这并不属于模型.那它属于哪里?
有人关心这个问题吗?
model-view-controller asp.net-mvc design-patterns business-logic-layer
我在Stack Overflow上看到了一些这样的提及,但是盯着维基百科(相关页面已被删除),并且在一个MFC动态对话框演示中没有任何启发我.有人可以解释一下吗?学习一个根本不同的概念听起来不错.
根据答案:我认为我对此有了更好的感受.我想我第一次没有仔细查看源代码.在这一点上,我对差异执行情有不同的看法.一方面,它可以使某些任务变得相当容易.另一方面,启动并运行(即,用您选择的语言设置)并不容易(我确信如果我更好地理解它)...虽然我猜它的工具箱只需要制作一次,然后根据需要进行扩展.我认为为了真正理解它,我可能需要尝试用另一种语言实现它.
language-agnostic model-view-controller differential-execution
我想知道如何用Node.js从头开始开发一个网站.我理解我怎么可能这样做,但我对最好的设计实践很感兴趣.
我需要这个理论网站:
在PHP中,构建一个非常小的网站非常简单 - 我在Apache和MySQL服务器上设置PHP然后执行以下操作:
includes/db/ 其中有connect.php用于连接数据库,具有常见数据库相关功能的文件等等includes/layout/ 有像footer.php,header.php和其他布局相关的东西includes/users/ 处理用户相关的操作那么PHP只是让你构建页面并将这些文件包含在一起形成一个网站 - 我可以这样:
<?php
require_once('inclues/users/user_session.php');
require_once('inclues/db/connect.php');
require_once('inclues/design/header.php')
?>
// Other php or html or related content relating to the page
<?php
require_once('inclues/.../footer.php');
?>
Run Code Online (Sandbox Code Playgroud)
我想知道Node.js中可能有什么相似之处 - 我正在寻找一种方法来实现这一点,尽可能简单,快速和直接.
如果答案不简单,我会喜欢推荐书,我不介意阅读.
我喜欢基于事件的编程,我非常喜欢JavaScript的能力,我对Node.js感到非常兴奋.我想学习如何从一开始就以正确的方式开发这种东西.
我一直在阅读Nodejs及其框架,并且最近完成了我的第一个完整的javascript前端(使用Angularjs).
我决定使用以下两个框架中的一个来进行我的下一个宠物项目:Nodejs冒险:
我已经读到了这两个,但仍然无法完全理解他们的差异,为什么我应该选择使用一个而不是另一个.所以请戴上你最好的推销员帽子,选择一个框架,然后把它卖给我.
我的宠物项目需要的一些功能是:
javascript ×3
asp.net-mvc ×2
node.js ×2
acl ×1
architecture ×1
backbone.js ×1
controller ×1
god-object ×1
java ×1
jsf ×1
meteor ×1
oop ×1
php ×1
qt ×1
rest ×1
sails.js ×1