怎么做一个展示商品展示网站源码的网站?

搜索软件项目
定制软件(含对源代码二次开发)
不限定本地开发
联系方式: 项目已经到期,按客户要求关闭联系方式
做一个产品展示的APP,二维码扫描功能、客户直接搜索功能、链接分享功能和基本的展示功能即可,没时间做,有能接单的不,报价来!
[竞标时间]:
你好,我公司能做这个项目,欢迎联系我们,成都梦拓科技有限公司...
[竞标时间]:
您好,我们公司能够帮您实现这个需求,也有众多类似的开发经验,...
[竞标时间]:
二维码扫描,客户直接搜索,链接分享和基本展示都能做,请联系....
[竞标时间]:
您好,我们公司从事多年网站建设,APP开发 专业网站建设,微...
*竞标报价:
57)) event.returnValue =" style="width:120" />&&元
(注意:只能输入数字)
*交付时间:
57)) event.returnValue =" style="width:120" />&&天
(注意:只能输入数字)
*竞标内容: 20-2000字
注意:只有软件公司和团队才能竞标
团队排行榜使用 Laravel 纯手工打造一个简单的电子商务网站(一) —— 后台新增商品及前台显示 - 推酷
使用 Laravel 纯手工打造一个简单的电子商务网站(一) —— 后台新增商品及前台显示
本系列教程我们将演示如何使用Laravel 5.1 纯手工打造一个简单但功能完备的电商网站。这个电商网站只售卖以ZIP格式打包的电子文章,用户下单并付款后即可下载,有点类似一些售卖网站主题(打包的文件)的网站,比如ThemeForest。
我们将会用到Laravel的一些功能特性,比如存储(Storage)和支付(Cashier),我们使用Storage将打包后的文章存储起来并放到网站售卖,而Cashier则用于下单后使用信用卡支付。和世界上其他大大小小的电商网站一样,我们首先要做的事情是上架商品,所以本章节我们将会创建一个可以添加商品的后台以及一个展示商品列表的前台页面。
本系列教程完整代码可以在GitHub上获取:
2、安装&设置
在此之前我们假设你已经安装好了Laravel并设置好了数据库连接,如果没有的话,请参考安装文档进行安装配置。
然后我们使用 Bootstrap 和 FontAwesome 来创建一个样式美观的布局页面。在 layouts 目录下创建一个 master.blade.php 文件,编辑其内容如下:
&title&Laravel 商店&/title&
&link rel=&stylesheet& href=&/bootstrap/3.3.5/css/bootstrap.min.css&&
&link rel=&stylesheet& href=&/bootstrap/3.3.5/css/bootstrap-theme.min.css&&
&script src=&/jquery-3.0.0.min.js&&&/script&
&script src=&/bootstrap/3.3.5/js/bootstrap.min.js&&&/script&
&link rel=&stylesheet& href=&/font-awesome/4.4.0/css/font-awesome.min.css&&
&link rel=&stylesheet& href=&/css/style.css&&
@section('sidebar')
&nav class=&navbar navbar-default
navbar-fixed-top& role=&navigation&&
&div class=&container-fluid&&
&div class=&navbar-header&&
&button type=&button& class=&navbar-toggle collapsed& data-toggle=&collapse& data-target=&#bs-example-navbar-collapse-1&&
&span class=&sr-only&&Toggle navigation&/span&
&span class=&icon-bar&&&/span&
&span class=&icon-bar&&&/span&
&span class=&icon-bar&&&/span&
&a class=&navbar-brand& href=&/&&Laravel 商店&/a&
&div class=&collapse navbar-collapse& id=&bs-example-navbar-collapse-1&&
&ul class=&nav navbar-nav navbar-right&&
@if(!Auth::user())
&li&&a href=&/auth/login&&登录&/a&&/li&
&li&&a href=&/auth/register&&注册&/a&&/li&
&li&&a href=&/order&&我的订单 &span class=&fa fa-briefcase&&&/span&&/a&&/li&
&li&&a href=&/cart&&购物车 &span class=&fa fa-shopping-cart&&&/span&&/a&&/li&
&li&&a href=&/auth/logout&&退出 {{ Auth::user()-&name}}&/a&&/li&
&/div&&!-- /.navbar-collapse --&
&/div&&!-- /.container-fluid --&
&div class=&container&&
@yield('content')
在该文件中我们定义了一个简单的布局:一个导航条以及一些链接。在页面头部加载了 Bootstrap 和 FontAwesome 的 CSS 样式文件,正如你所看到的,我们已经为网站定义了所有需要的菜单项,至于其实现我们将会在下一节讨论,下面我们将会到入之前所说创建商店的后台以便添加商品和文件。
3、后台实现
要保存所有商品信息首先我们需要创建相应的数据表,这里我们创建两个: products 和 files ,分别用于商品信息和文件信息。我们使用 Artisan 命令来创建迁移文件:
php artisan make:migration create_table_products
php artisan make:migration create_table_files
编辑相应的迁移文件内容如下:
use Illuminate\Database\Schema\B
use Illuminate\Database\Migrations\M
class CreateTableProducts extends Migration
public function up()
Schema::create('products', function (Blueprint $table) {
$table-&increments('id');
$table-&string('name');
$table-&string('description');
$table-&float('price');
$table-&string('imageurl');
$table-&string('file_id');
$table-&timestamps();
public function down()
Schema::drop('products');
其中我们使用 file_id 建立与 files 表的关联:
use Illuminate\Database\Schema\B
use Illuminate\Database\Migrations\M
class CreateTableFiles extends Migration
public function up()
Schema::create('files', function(Blueprint $table)
$table-&increments('id');
$table-&string('filename');
$table-&string('mime');
$table-&string('original_filename');
$table-&timestamps();
public function down()
Schema::drop('files');
然后我们运行如下命令创建表:
php artisan migrate
数据表创建好了之后我们来创建相应的模型类:
php artisan make:model File
php artisan make:model Product
File 模型类保持默认不变,我们在 Product 模型中新增一个方法建立与 File 模型的关联:
namespace A
use Illuminate\Database\Eloquent\M
class Product extends Model
public function file()
return $this-&belongsTo('App\File');
现在所有模型类以及相关的数据表已经创建好了,接下来我们来编写后台控制器和视图。
商品对应的控制器是 ProductController ,这里我们暂时先开放所有人可以访问这个控制器,下一节我们将设置只有后台管理员才能访问该控制器,创建控制器的命令如下:
php artisan make:controller ProductController
然后编辑该控制器内容:
namespace App\Http\C
use App\Http\R
use App\Http\Controllers\C
use Illuminate\Support\Facades\S
use Illuminate\Support\Facades\F
class ProductController extends Controller
public function index(){
$products = Product::all();
return view('admin.products',['products' =& $products]);
public function destroy($id){
Product::destroy($id);
return redirect('/admin/products');
public function newProduct(){
return view('admin.new');
public function add() {
$file = Request::file('file');
$extension = $file-&getClientOriginalExtension();
Storage::disk('local')-&put($file-&getFilename().'.'.$extension,
File::get($file));
$entry = new \App\File();
$entry-&mime = $file-&getClientMimeType();
$entry-&original_filename = $file-&getClientOriginalName();
$entry-&filename = $file-&getFilename().'.'.$
$entry-&save();
= new Product();
$product-&file_id=$entry-&
$product-&name =Request::input('name');
$product-&description =Request::input('description');
$product-&price =Request::input('price');
$product-&imageurl =Request::input('imageurl');
$product-&save();
return redirect('/admin/products');
根据上述代码我们还需要创建两个视图文件,首先是 resources/view/admin.new.blade.php :
@extends('layouts.master')
@section('新增商品', 'Page Title')
@section('sidebar')
@endsection
@section('content')
&div class=&panel panel-info&&
&div class=&panel-heading&&
&div class=&panel-title&&新增商品&/div&
&div class=&panel-body& &
&form method=&POST& action=&/admin/product/save& class=&form-horizontal& enctype=&multipart/form-data& role=&form&&
{!! csrf_field() !!}
&fieldset&
&!-- Text input--&
&div class=&form-group&&
&label class=&col-md-3 control-label& for=&name&&名称&/label&
&div class=&col-md-9&&
&input id=&name& name=&name& type=&text& placeholder=&商品名称& class=&form-control input-md& required=&&&
&div class=&form-group&&
&label class=&col-md-3 control-label& for=&textarea&&描述&/label&
&div class=&col-md-9&&
&textarea class=&form-control& id=&textarea& name=&description&&&/textarea&
&div class=&form-group&&
&label class=&col-md-3 control-label& for=&price&&价格&/label&
&div class=&col-md-9&&
&input id=&price& name=&price& type=&text& placeholder=&商品价格& class=&form-control input-md& required=&&&
&div class=&form-group&&
&label class=&col-md-3 control-label& for=&imageurl&&图片URL&/label&
&div class=&col-md-9&&
&input id=&imageurl& name=&imageurl& type=&text& placeholder=&商品图片URL& class=&form-control input-md& &
&div class=&form-group&&
&label class=&col-md-3 control-label& for=&file&&文件&/label&
&div class=&col-md-9&&
&input id=&file& name=&file& class=&input-file& type=&file&&
&div class=&form-group&&
&label class=&col-md-3 control-label& for=&submit&&&/label&
&div class=&col-md-9&&
&button id=&submit& name=&submit& class=&btn btn-primary&&提交&/button&
&/fieldset&
@endsection
然后是 resources/view/admin/products.blade.php :
@extends('layouts.master')
@section('商店后台', 'Page Title')
@section('sidebar')
@endsection
@section('content')
&div class=&container&&
&div class=&row&&
&div class=&col-md-6&&
&a href=&/admin/product/new&&&button class=&btn btn-success&&新增商品&/button&&/a&
&div class=&row&&
&div class=&col-md-12&&
&table class=&table table-striped&&
&td&名称&/td&
&td&价格&/td&
&td&文件&/td&
&td&操作&/td&
@foreach ($products as $product)
&td&{{$product-&name}}&/td&
&td&¥{{$product-&price}}&/td&
&td&{{$product-&file-&original_filename}}&/td&
&td&&a href=&/admin/product/destroy/{{$product-&id}}&&&button class=&btn btn-danger&&删除&/button&&/a& &/td&
@endforeach
@endsection
最后要做的就是在 routes.php 中定义路由:
Route::get('/admin/product/new', 'ProductController@newProduct');
Route::get('/admin/products', 'ProductController@index');
Route::get('/admin/product/destroy/{id}', 'ProductController@destroy');
Route::post('/admin/product/save', 'ProductController@add');
这样我们访问后台页面时就能看到如下页面:
添加新商品页面如下:
至此,一个简单的商城后台就这么实现了,对生产环境而言这还不够,但是所有一个商城需要的基本功能已经具备了,你可以添加一个新商品,应用会将其对应的文件存储到指定目录,这里要感谢Laravel提供的Storage API,你可以将文件存在本地,也可以存放到Amazon S3或者Dropbox,只需要修改配置文件就行,不需要修改任何代码。
4、前台展示
后台新增商品后需要在前台将商品展示给用户,我们将相应的逻辑整合到前端控制器 MainController 中,仍然使用命令行创建这个控制器:
php artisan make:controller MainController
编辑这个控制器的代码如下:
namespace App\Http\C
use Illuminate\Http\R
use App\Http\R
use App\Http\Controllers\C
class MainController extends Controller
public function index()
$products = Product::all();
return view('main.index',['products' =& $products]);
我们只是简单定义了一个 index 方法来获取所有商品, 并将其渲染到 main.index 页面,下面我们来创建这个页面 resources/view/main/index.blade.php ,编辑文件内容如下:
@extends('layouts.master')
@section('商品列表', 'Page Title')
@section('sidebar')
@endsection
@section('content')
&div class=&container&&
&div class=&row&&
&div class=&col-md-12&&
@foreach ($products as $product)
&div class=&col-sm-6 col-md-4&&
&div class=&thumbnail& &
&img src=&{{$product-&imageurl}}& class=&img-responsive&&
&div class=&caption&&
&div class=&row&&
&div class=&col-md-6 col-xs-6&&
&h3&{{$product-&name}}&/h3&
&div class=&col-md-6 col-xs-6 price&&
&label&¥{{$product-&price}}&/label&&/h3&
&p&{{$product-&description}}&/p&
&div class=&row&&
&div class=&col-md-6 col-md-offset-3&&
&a href=&/addProduct/{{$product-&id}}& class=&btn btn-success btn-product&&&span class=&fa fa-shopping-cart&&&/span& 购买&/a&&/div&
@endforeach
@endsection
和后台一样我们也要定义相应的路由:
Route::get('/', 'MainController@index');
这样我们访问前台页面就能看到创建的商品了:
本章节我们实现了后台添加商品和前台展示商品的功能,下一节我们将实现用户认证和购物车功能。
注:本文整理自
,完整代码可以从GitHub获取
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致做一个简单的展示商品信息的网站
时间: 23:29&&文章来源:网络整理作者:建网360&&&
通过猿人邦网 ,保证身份真实可靠
完成 ,保证能随时联系到服务商
具体要求:
做礼品的行业,按照案列网站做就可以了1、页面看上去简单清爽&没有多少修饰2、字体就是外国的网站常用英文字体&很好看的那种简单3、后台的功能要能上传商品,查询之内的&一些基本功能,如果有新意&愿意接受和给你拉到回头客哦4、主色调以黑白灰为主&&&&&给个网站参考下吧&简单打开速度快:&5、有中文和英文2个版本可以切换6、工...
做礼品的行业,按照案列网站做就可以了1、页面看上去简单清爽&没有多少修饰2、字体就是外国的网站常用英文字体&很好看的那种简单3、后台的功能要能上传商品,查询之内的&一些基本功能,如果有新意&愿意接受和给你拉到回头客哦4、主色调以黑白灰为主&&&&&给个网站参考下吧&简单打开速度快:&5、有中文和英文2个版本可以切换6、工期七天完成7、需要有后台,自己录入产品也可以8、网站价格1000,空间域名另算
您还可以看其他相关文章
猪八戒网用户()【open_l4wo3kkd】在分类发布需求:需要建设一个微信网贷网站,和我的pc网站实现数据共享...
猪八戒网用户()【m_0772f4frli】在分类发布需求:我想建一个地方卖商品的网站。具体要求:具体要求是;...
猪八戒网用户()【江炳燚】在分类发布需求:经济金融数据库网站制作。具体要求:1.三个页面:新闻资讯...
猪八戒网用户()【办公数码】在分类发布需求:南岭复印机租赁手机站建设。具体要求:清淅明了的报价...
@jianwang360&版权所有&&&&地址:北京市朝阳区东三环双井桥东首城国际B座1516室 |

我要回帖

更多关于 公众号怎么做商品展示 的文章

 

随机推荐