框架见文章Creating a simple web prototype based on CppCMS
我们只需要更改头文件content.h
#ifndef CONTENT_H
#define CONTENT_H
#include <cppcms/view.h>
namespace Content {
struct PageContent : public cppcms::base_content {
string text ;
};
}
#endif
在struct中添加一个string成员变量text, 然后在Site.cc中给其赋值
#include "controller/site.h"
#include <cppcms/url_dispatcher.h>
#include "model/content.h"
#include <cppcms/http_file.h>
using namespace std;
Site::Site(cppcms::service &srv):cppcms::application(srv) {
dispatcher().assign("/page" , &Site::Page, this);
}
void Site::Page() {
Content::PageContent content;
content.text = "hello world";
render("page","page_view", content);
}
最后改一下page.tmpl文件
<% c++ #include "model/content.h" %>
<% skin page%>
<% view page_view uses Content::PageContent %>
<% template render() %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
</head>
<body>
<h1> <%= text %></h1>
</body>
</html>
<% end template %>
<% end view %>
<% end skin %>
编译运行程序后会在页面显示hello world