opencart 添加新模型
1,修改模板页,复制category_list.tpl,category_form.tpl,修改成新的名称。
category_list.tpl是列出页面,category_form.tpl是添加和修改页,删除页和列出页共用模板。
2,控制功能再controller文件夹下
3,model是具体处理数据内容文件夹
4,语言消息页在language文件夹下
删除功能
public function delete() {
$this->language->load('catalog/wpcms');
$this->document->setTitle($this->language->get('heading_title'));
$this->load->model('catalog/wpcms');
if (isset($this->request->post['selected']) && $this->validateDelete()) {
foreach ($this->request->post['selected'] as $category_id) {
$this->model_catalog_wpcms->deletewpcms($category_id); //这里显示调用model中的方法delete
}
$this->session->data['success'] = $this->language->get('text_success');
$url = '';
if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}
$this->redirect($this->url->link('catalog/wpcms', 'token=' . $this->session->data['token'] . $url, 'SSL'));
}
$this->getList(); //这里显示删除完成后调用显示列表
}
来到model文件夹下的具体页面,修改delete方法如下
public function deleteWpcms($Wpcms_id) {
$this->db->query("DELETE FROM " . DB_PREFIX . "terms WHERE term_id = '" . (int)$Wpcms_id . "'");
$this->cache->delete('Wpcms');
}
修改完成后台测试。
添加功能
public function insert() {
$this->language->load('catalog/wpcms');
$this->document->setTitle($this->language->get('heading_title'));
$this->load->model('catalog/wpcms');
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) {
$this->model_catalog_wpcms->addwpcms($this->request->post);
$this->session->data['success'] = $this->language->get('text_success');
$url = '';
if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}
$this->redirect($this->url->link('catalog/wpcms', 'token=' . $this->session->data['token'] . $url, 'SSL'));
}
$this->getForm();
}
public function addwpcms($data) {
foreach ($data['category_description'] as $language_id => $value) {
$this->db->query("INSERT INTO " . DB_PREFIX . "terms ( name, slug, term_group) VALUES ('". $this->db->escape($value['name']) ."', '". $this->db->escape($value['meta_description']) ."', 0)");
}
$this->cache->delete('wpcms');
}
修改功能
public function update() {
$this->language->load('catalog/wpcms');
$this->document->setTitle($this->language->get('heading_title'));
$this->load->model('catalog/wpcms');
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validateForm()) {
$this->model_catalog_wpcms->editwpcms($this->request->get['category_id'], $this->request->post);
$this->session->data['success'] = $this->language->get('text_success');
$url = '';
if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}
$this->redirect($this->url->link('catalog/wpcms', 'token=' . $this->session->data['token'] . $url, 'SSL'));
}
$this->getForm();
}
opencart 添加新模型的更多相关文章
- dedecms添加新模型
dedecms虽然预设了一些常见网页的功能模型,但是如果需要新的功能则需要自己创建,dedecms也提供了创建新模型的功能,如下: 1.打开后台首页=>核心=>内容模型管理 2.添加新模型 ...
- ASP.NET MVC 5 - 给电影表和模型添加新字段
在本节中,您将使用Entity Framework Code First来实现模型类上的操作.从而使得这些操作和变更,可以应用到数据库中. 默认情况下,就像您在之前的教程中所作的那样,使用 Entit ...
- Asp.Net MVC4入门指南(7):给电影表和模型添加新字段
在本节中,您将使用Entity Framework Code First来实现模型类上的操作.从而使得这些操作和变更,可以应用到数据库中. 默认情况下,就像您在之前的教程中所作的那样,使用 Entit ...
- ASP.NET MVC系列:为已有模型添加新的属性
在模型类Movie中添加一个新的属性Rating
- [转]ASP.NET MVC 5 - 给电影表和模型添加新字段
在本节中,您将使用Entity Framework Code First来实现模型类上的操作.从而使得这些操作和变更,可以应用到数据库中. 默认情况下,就像您在之前的教程中所作的那样,使用 Entit ...
- ASP.NET MVC 5 - 添加一个模型
在本节中,您将添加一些类,这些类用于管理数据库中的电影.这些类是ASP.NET MVC 应用程序中的"模型(Model)". 您将使用.NET Framework 数据访问技术En ...
- ASP.NET MVC3快速入门——第四节、添加一个模型
在本节中我们将追加一些类来管理数据库中的电影.这些类将成为我们的MVC应用程序中的“模型”部分.我们将使用一个.NET Framework的被称之为“Entiry Framework”的数据访问技术来 ...
- Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型
Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型 在这一节中,你将添加用于管理数据库中电影的类.这些类是ASP.NET MVC应用程序的模型部分. 你将使用.NET Framewo ...
- 【译】ASP.NET MVC 5 教程 - 9:添加新字段
原文:[译]ASP.NET MVC 5 教程 - 9:添加新字段 在本节中,我们将使用Entity Framework Code First 数据迁移功能将模型类的改变应用到数据库中. 默认情况下,当 ...
随机推荐
- node.js 简介
简介: Node,是一个可以让 JavaScript 运行在服务器端的平台.它可以让 JavaScript 脱离浏览器的束缚运行在一般的服务器环境下 Node.js 是一个为实时Web ...
- 利用SSIS的ForcedExecutionResult 属性 和CheckPoint调试Package
1,ForcedExecutionResult 强制一个package或task执行的结果,共有四种值 None,Success,Failure,Completion,默认值是None,表示不强制返回 ...
- How to select Multiple images from UIImagePickerController [duplicate]
accepted You have to use custom imagepicker. And I think ELCImagePickerController is the best option ...
- 2014牡丹江网络zoj3816Generalized Palindromic Number(dfs或者bfs)
#include <iostream> #include <stdio.h> #include <cmath> #include <algorithm> ...
- Chrome 控制台指南
转自:http://blog.jobbole.com/76985/ Chrome的开发者工具已经强大到没朋友的地步了,特别是其功能丰富界面友好的console,使用得当可以有如下功效: 更高「逼格」更 ...
- spring源码分析之spring注解@Aspect是如何工作的?
1.@Aspect 在xml定义:<aop:aspectj-autoproxy />,其定义在http://www.springframework.org/schema/aop/sprin ...
- Nodejs学习笔记(一)——初识Nodejs
前言:目前工作的分内之事相对较为单一,希望可以通过工作之余的时间给自己充充电,只是没有一个学伴或大神带,只能说是摸索着前进.起初准备好好研究下Spring这个框架,下载了源码,结合书籍准备一探究竟,看 ...
- 使用 SQL 命令 OPTIMIZE TABLE 释放表空间
前提: 1.删除了表的一大部分: 2.已经对含有可变长度行的表(含有VARCHAR, BLOB或TEXT列的表)进行了很多更改. ----------------------------------- ...
- JS兼容所有浏览器的一段加入收藏代码,设置为首页
<script language="javascript" type="text/javascript"> function addfavorite ...
- Solr:文本分析
文本分析时搜索引擎的核心工作之一,对文本包含许多处理步骤,比如:分词.大写转小写.词干化.同义词转化等.简单的说,文本分析就说将一个文本字段的值转为一个一个的token,然后被保存到Lucene的索引 ...