众所周知,在 View (MVC)中创建变量或放置逻辑是一种非常糟糕的做法,所以我的问题恰恰相反,在模型中创建 View 组件(使用html标签)是一种不好的做法吗? (MVC)?
有时,在我的 View 中一个简单的循环是不够的,我需要使用递归函数将我的“树”节点转换为模型中的字符串对象,然后在 View 中打印该字符串对象。所以我承认,即使总有办法将树转换为列表,然后将“可循环”列表发送到 View ,我也会在模型中生成 html 标签。但是我在模型中创建 html 组件还有第二个原因,因为当我更改框架时更容易,我不需要将 View 转换为其他格式(.jsp、.xhtml for Facelets,... )。
=> 在模型 (MVC) 中使用 html 标签真的是一种不好的做法吗?为什么 ?谢谢
最佳答案
您正在选择一种特定的方式来表示模型数据 (html),因为它更容易。这是一个非常糟糕的决定,完全违背了 MVC 模式。
但是,您可以轻松正确地完成此操作。使用xml
!然后,在 View 中使用从 xml
到 html
的 xslt
转换将非常简单。您会惊讶地发现,在不影响模型的情况下更改 View 会变得多么容易。
Is it a really bad practice to use html tags in the Model (MVC) ? Why ?
每个软件都在不断发展。需求发生变化,功能被添加,甚至架构也发生变化。在模型和 View 之间传输数据时,使用 html
来表示数据会使更改变得更加困难。
举例来说,您编写的漂亮报告由模型渲染为 html
并由 View 直接呈现给浏览器,现在需要在 中生成csv
以及(我最近接到的一个真正的要求)。看看那会有多困难吗?然后,您会将数据从 html
转换为 csv
。
但是,如果您在 xml
中创建了报告,并通过应用 xslt
将其转换为 html
来实现您的 View ,呈现 csv 的需要是微不足道的。这只是另一个 xslt
。
关于java - 在模型(MVC)中使用 html 标签是一个坏习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31378814/