- Python (使用Flask框架)huaihaihotelshanghai.cn
python
from flask import Flask, render_template, request
app = Flask(name)
模拟数据库
products = [
{“id”: 1, “name”: “Product 1”, “price”: 100},
{“id”: 2, “name”: “Product 2”, “price”: 200},
]
@app.route(‘/’)
def index():
return render_template(‘index.html’, products=products)
@app.route(‘/product/int:product_id’)
def product_detail(product_id):
product = next((item for item in products if item[“id”] == product_id), None)
return render_template(‘product_detail.html’, product=product)
if name == ‘main’:
app.run(debug=True)
2. JavaScript (使用Node.js和Express框架)
javascript
const express = require(‘express’);
const app = express();
// 模拟数据库
const products = [
{ id: 1, name: ‘Product 1’, price: 100 },
{ id: 2, name: ‘Product 2’, price: 200 },
];
app.get(‘/’, (req, res) => {
res.send(‘商城首页’);
// 实际项目中,这里会渲染一个HTML页面并传入products数据
});
app.get(‘/product/:product_id’, (req, res) => {
const product_id = parseInt(req.params.product_id);
const product = products.find(p => p.id === product_id);
if (product) {
res.send(产品详情: ${product.name}, 价格: ${product.price}
);
// 实际项目中,这里会渲染一个产品详情页面并传入product数据
} else {
res.status(404).send(‘产品未找到’);
}
});
app.listen(3000, () => console.log(‘商城服务已启动’));
3. Java (使用Spring Boot)
Java的Spring Boot示例会更长,但这里是一个简单的Controller类示例:
java
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.Arrays;
import java.util.List;
@Controller
public class ProductController {
// 模拟数据库
private static final List<Product> products = Arrays.asList(
new Product(1, "Product 1", 100),
new Product(2, "Product 2", 200)
);
@GetMapping("/")
public String index(Model model) {
model.addAttribute("products", products);
return "index"; // 指向templates目录下的index.html
}
@GetMapping("/product/{productId}")
public String productDetail(@PathVariable Long productId, Model model) {
Product product = products.stream()
.filter(p -> p.getId().equals(productId))
.findFirst()
.orElse(null);
if (product != null) {
model.addAttribute("product", product);
return "product_detail"; // 指向templates目录下的product_detail.html
} else {
return "error"; // 或返回404页面等
}
}
// Product类省略...
}
4. 其他语言
对于其他语言(如PHP、Ruby、C#等),你可以使用类似的MVC或路由机制来构建基本的购物商城页面。每个语言都有其自己的框架和库,如PHP的Laravel、Ruby的Rails、C#的ASP.NET等,它们都可以帮助你更快速地构建Web应用程序。由于生成一个完整的购物商城代码在多种语言中是一个庞大的任务,我将为你提供各个语言中的简单示例代码片段,这些代码片段将展示如何开始一个基本的购物商城项目。请注意,这些示例并不包含完整的商城功能,如用户认证、支付集成、库存管理等。
- Python (使用Flask框架)
python
from flask import Flask, render_template, request
app = Flask(name)
模拟数据库
products = [
{“id”: 1, “name”: “Product 1”, “price”: 100},
{“id”: 2, “name”: “Product 2”, “price”: 200},
]
@app.route(‘/’)
def index():
return render_template(‘index.html’, products=products)
@app.route(‘/product/int:product_id’)
def product_detail(product_id):
product = next((item for item in products if item[“id”] == product_id), None)
return render_template(‘product_detail.html’, product=product)
if name == ‘main’:
app.run(debug=True)
2. JavaScript (使用Node.js和Express框架)
javascript
const express = require(‘express’);
const app = express();
// 模拟数据库
const products = [
{ id: 1, name: ‘Product 1’, price: 100 },
{ id: 2, name: ‘Product 2’, price: 200 },
];
app.get(‘/’, (req, res) => {
res.send(‘商城首页’);
// 实际项目中,这里会渲染一个HTML页面并传入products数据
});
app.get(‘/product/:product_id’, (req, res) => {
const product_id = parseInt(req.params.product_id);
const product = products.find(p => p.id === product_id);
if (product) {
res.send(产品详情: ${product.name}, 价格: ${product.price}
);
// 实际项目中,这里会渲染一个产品详情页面并传入product数据
} else {
res.status(404).send(‘产品未找到’);
}
});
app.listen(3000, () => console.log(‘商城服务已启动’));
3. Java (使用Spring Boot)
Java的Spring Boot示例会更长,但这里是一个简单的Controller类示例:
java
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.Arrays;
import java.util.List;
@Controller
public class ProductController {
// 模拟数据库
private static final List<Product> products = Arrays.asList(
new Product(1, "Product 1", 100),
new Product(2, "Product 2", 200)
);
@GetMapping("/")
public String index(Model model) {
model.addAttribute("products", products);
return "index"; // 指向templates目录下的index.html
}
@GetMapping("/product/{productId}")
public String productDetail(@PathVariable Long productId, Model model) {
Product product = products.stream()
.filter(p -> p.getId().equals(productId))
.findFirst()
.orElse(null);
if (product != null) {
model.addAttribute("product", product);
return "product_detail"; // 指向templates目录下的product_detail.html
} else {
return "error"; // 或返回404页面等
}
}
// Product类省略...
}
4. 其他语言
对于其他语言(如PHP、Ruby、C#等),你可以使用类似的MVC或路由机制来构建基本的购物商城页面。每个语言都有其自己的框架和库,如PHP的Laravel、Ruby的Rails、C#的ASP.NET等,它们都可以帮助你更快速地构建Web应用程序。