提交 6ad0d66c 编写于 作者: E Evan

update: 微调部分样式,修复 BUG,重新输出数据库脚本

修复了如果一开始就使用修改功能,重置表单会重置为第一次点击的书籍的 BUG
上级 6d05c85e
......@@ -113,7 +113,8 @@
author: item.author,
date: item.date,
press: item.press,
abs: item.abs
abs: item.abs,
cid: item.cid
}
}
}
......
<template>
<div>
<i class="el-icon-circle-plus-outline" @click="buttonClick"></i>
<el-dialog title="添加/修改图书" :visible.sync="dialogFormVisible">
<el-dialog
title="添加/修改图书"
:visible.sync="dialogFormVisible">
<el-form :model="form" style="text-align: left" ref="dataForm">
<el-form-item label="书名" :label-width="formLabelWidth" prop="title">
<el-input v-model="form.title" autocomplete="off" placeholder="不加《》"></el-input>
......@@ -21,10 +23,10 @@
<el-form-item label="简介" :label-width="formLabelWidth" prop="abs">
<el-input type="textarea" v-model="form.abs" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="分类" :label-width="formLabelWidth" prop="categories">
<el-select v-model="form.region" placeholder="功能完善中">
<el-option label="分类一" value="shanghai"></el-option>
<el-option label="分类二" value="beijing"></el-option>
<el-form-item label="分类" :label-width="formLabelWidth" prop="cid">
<el-select v-model="form.cid" placeholder="功能完善中">
<el-option label="分类一" value="1"></el-option>
<el-option label="分类二" value="2"></el-option>
</el-select>
</el-form-item>
<el-form-item prop="id" style="height: 0">
......@@ -52,16 +54,17 @@
date: '',
press: '',
cover: '',
abs: ''
abs: '',
cid: ''
},
formLabelWidth: '120px'
}
},
methods: {
buttonClick () {
this.$nextTick(() => {
this.$refs.dataForm.resetFields()
})
this.form = {
id: ''
}
this.dialogFormVisible = true
},
onSubmit () {
......@@ -74,7 +77,8 @@
author: this.form.author,
date: this.form.date,
press: this.form.press,
abs: this.form.abs
abs: this.form.abs,
cid: this.form.cid
}).then(resp => {
if (resp && resp.status === 200) {
this.dialogFormVisible = false
......@@ -88,7 +92,7 @@
<style scoped>
.el-icon-circle-plus-outline {
margin: 50px 0;
margin: 50px 0 0 20px;
font-size: 100px;
float: left;
cursor: pointer;
......
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>白卷 - White Jotter</title><link href=/static/css/app.f9a3ed1fe14768b9555a91091df22868.css rel=stylesheet></head><body style="background: #f6f6f6"><div id=app></div><script type=text/javascript src=/static/js/manifest.2ae2e69a05c33dfc65f8.js></script><script type=text/javascript src=/static/js/vendor.578a67f45ff71504b68d.js></script><script type=text/javascript src=/static/js/app.986d013b3e95205e480d.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>白卷 - White Jotter</title><link href=/static/css/app.922dd609995b47781b97dc061426615b.css rel=stylesheet></head><body style="background: #f6f6f6"><div id=app></div><script type=text/javascript src=/static/js/manifest.2ae2e69a05c33dfc65f8.js></script><script type=text/javascript src=/static/js/vendor.578a67f45ff71504b68d.js></script><script type=text/javascript src=/static/js/app.eefd68c79fe5f152c777.js></script></body></html>
\ No newline at end of file
因为 它太大了无法显示 source diff 。你可以改为 查看blob
因为 它太大了无法显示 source diff 。你可以改为 查看blob
{"version":3,"sources":["webpack:///webpack/bootstrap 2faaba5f94623f8fe4dc"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 2faaba5f94623f8fe4dc"],"sourceRoot":""}
\ No newline at end of file
{"version":3,"sources":["webpack:///webpack/bootstrap 909efc1f11414a3e60f4"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 909efc1f11414a3e60f4"],"sourceRoot":""}
\ No newline at end of file
......@@ -2,15 +2,15 @@
Navicat MySQL Data Transfer
Source Server : MySQL
Source Server Version : 50515
Source Server Version : 50721
Source Host : localhost:3306
Source Database : wj
Target Server Type : MYSQL
Target Server Version : 50515
Target Server Version : 50721
File Encoding : 65001
Date: 2019-03-27 19:28:03
Date: 2019-04-09 21:48:01
*/
SET FOREIGN_KEY_CHECKS=0;
......@@ -23,18 +23,51 @@ CREATE TABLE `book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`cover` varchar(255) DEFAULT '',
`title` varchar(255) NOT NULL DEFAULT '',
`author` varchar(255) NOT NULL DEFAULT '',
`author` varchar(255) DEFAULT '',
`date` varchar(20) DEFAULT '',
`press` varchar(255) DEFAULT '',
`abs` varchar(255) NOT NULL,
`abs` varchar(255) DEFAULT NULL,
`cid` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
) ENGINE=InnoDB AUTO_INCREMENT=74 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of book
-- ----------------------------
INSERT INTO `book` VALUES ('1', '/img/books/s29958602.jpg', '且在人间', '余秀华', '2019-2-1', '湖南文艺出版社', '诗人余秀华中篇小说首次结集出版。\r\n\r\n 《且在人间》——以余秀华为生活原型,讲述一个残疾女人悲苦倔强、向死而生的故事。\r\n\r\n 女主人公周玉生活在乡村,患有“脑瘫”,她几乎被所有人漠视,甚至被整个社会抛弃,但是她渴望被当成一个普通的健康人,而不是带着怜悯或不屑,她只要求平等。爱情的缺 失,家庭的不幸,生活的种种际遇让周玉用诗歌的方式把 情感抒发出来,最终她用诗歌创作出了一个文学的世界,得到了人们的认可。');
INSERT INTO `book` VALUES ('2', '/img/books/s2768378.jpg', '三体', '刘慈欣', ' 2008-1', '重庆出版社', '文化大革命如火如荼进行的同时。军方探寻外星文明的绝秘计划“红岸工程”取得了突破性进展。但在按下发射键的那一刻,历经劫难的叶文洁没有意识到,她彻底改变了人类的命运。地球文明向宇宙发出的第一声啼鸣,以太阳为中心,以光速向宇宙深处飞驰……\r\n\r\n四光年外,“三体文明”正苦苦挣扎——三颗无规则运行的太阳主导下的百余次毁灭与重生逼迫他们逃离母星。而恰在此时。他们接收到了地球发来的信息。在运用超技术锁死地球人的基础科学之后。三体人庞大的宇宙舰队开始向地球进发……\r\n\r\n人类的末日悄然来临。');
INSERT INTO `book` VALUES ('1', 'https://img-blog.csdnimg.cn/20190402210438845.jpg', '且在人间', '余秀华', '2019-2-1', '湖南文艺出版社', '诗人余秀华中篇小说首次结集出版。\r\n\r\n 《且在人间》——以余秀华为生活原型,讲述一个残疾女人悲苦倔强、向死而生的故事。\r\n\r\n 女主人公周玉生活在乡村,患有“脑瘫”,她几乎被所有人漠视,甚至被整个社会抛弃,但是她渴望被当成一个普通的健康人,而不是带着怜悯或不屑,她只要求平等。爱情的缺 失,家庭的不幸,生活的种种际遇让周玉用诗歌的方式把 情感抒发出来,最终她用诗歌创作出了一个文学的世界,得到了人们的认可。', null);
INSERT INTO `book` VALUES ('2', 'https://img-blog.csdnimg.cn/20190402210350563.jpg', '三体', '刘慈欣', ' 2008-1', '重庆出版社', '文化大革命如火如荼进行的同时。军方探寻外星文明的绝秘计划“红岸工程”取得了突破性进展。但在按下发射键的那一刻,历经劫难的叶文洁没有意识到,她彻底改变了人类的命运。地球文明向宇宙发出的第一声啼鸣,以太阳为中心,以光速向宇宙深处飞驰……\r\n\r\n四光年外,“三体文明”正苦苦挣扎——三颗无规则运行的太阳主导下的百余次毁灭与重生逼迫他们逃离母星。而恰在此时。他们接收到了地球发来的信息。在运用超技术锁死地球人的基础科学之后。三体人庞大的宇宙舰队开始向地球进发……\r\n\r\n人类的末日悄然来临。', null);
INSERT INTO `book` VALUES ('32', 'https://img1.doubanio.com/view/subject/l/public/s30029827.jpg', '叙事的虚构性', '[美] 海登·怀特 ', '2019-3', '南京大学出版社', '海登•怀特被誉为人类伟大的思想家之一。从1973年出版具有里程碑意义的专著《元史学》以来,怀特的作品对于历史学、文学研究、人类学、哲学、艺术史、电影传媒研究等将叙事学作为关注焦点的学科而言意义非凡。\n\n本书由罗伯特•多兰作序,他巧妙地将怀特重要但难得一见的文章汇集成册,研究探讨他关于历史书写和叙事的革命性理论。怀特的这些文章大多采用论文体,内容涉及多位思想家,探讨诸多主题,文笔犀利,语言优美。\n\n《叙事的虚构性》追溯怀特重要思想的演变轨迹,是历史编纂学者和学习者、历史理论和文学研究学者们的重要读物。', null);
INSERT INTO `book` VALUES ('35', 'https://img3.doubanio.com/view/subject/m/public/s30021261.jpg', '圣母', '[日]秋吉理香子 ', '2019-3', '新星出版社', '一起男童被害案搅得蓝出市人心惶惶。\n\n好不容易怀孕生产的保奈美抱紧年幼的孩子,立誓要不惜任何代价保护她。\n\n男人是在孩子出生后才成为父亲的,但女人,是从小生命来到体内的那一瞬间起,就是母亲了。患有不孕症的保奈美是经历过艰辛的治疗过程才终于有了孩子的,她不允许这起命案威胁到宝贵的孩子!\n\n母亲,就是要消除所有对子女的威胁,每一位母亲都应肩负这样的使命,这是神圣的天职!', null);
INSERT INTO `book` VALUES ('37', 'https://img3.doubanio.com/view/subject/l/public/s29992195.jpg', '奢侈与逸乐', '[英]马克辛·伯格', '2019-3', '中国工人出版社', '本书探讨了十八世纪英国新式、时尚的消费品的发明、制造和购买。', null);
INSERT INTO `book` VALUES ('38', 'https://img3.doubanio.com/view/subject/l/public/s30012926.jpg', '忧伤动物', '[德]莫妮卡·马龙 ', '2019-4', '漓江出版社', '“忧伤动物”(animal triste)这个词组取自一句最早可以追溯到亚里士多德时代的拉丁语名言,即“欢爱后,每个动物都忧伤不已”(Post coitum omne animal triste est)。无疑,这部冠以如此标题的小说让人有不祥的预感并暗示着宿命的思想。小说的女主人公是位近乎百岁的老人。在多年前有意斩断了与外界的一切联系之后,在她的后半生里,她唯一能做的就是或躺或坐在“印着鲜红、艳绿和深紫色的大花”、让人想起“食肉植物的花朵”的床单上,追忆几十年前她和自己...', null);
INSERT INTO `book` VALUES ('54', 'https://img1.doubanio.com/view/subject/l/public/s32280419.jpg', '爱界', '[英] 费伊·韦尔登 ', '2019-3-1', '人民文学出版社', '去不去爱,爱的界限何在,一直是普拉克西丝的人生课题。\n\n年迈的她独自待在肮脏而昏暗的地下室里,想写回忆录,可她该写些什么呢?是写父母未婚同居生下了她,她还年幼天真无邪时,母女就遭父亲抛弃?还是写她曾经或是主动或是被动地成了未婚同居者、妻子、情人、母亲、后母?还是写她两年的牢狱生活?她想描绘二十世纪女性的众生相,想记录女性群体在情感、灵魂和思想方面所处的三重困境,想道出女性之间的大爱如何铸成姐妹之谊。', null);
INSERT INTO `book` VALUES ('55', 'https://img1.doubanio.com/view/subject/l/public/s29967309.jpg', '密室中的旅行', '[美] 保罗·奥斯特 ', '2019-3', '九州出版社', '一旦被抛进这个世界,我们就永远不会消失,即使造物者已经死去。\n\n.\n\n布兰克先生发现自己被囚禁在一个陌生的房间里,对过去的身份和经历一无所知。桌上有四叠六英寸厚的文稿,其中有一份未完待续的囚犯自述;还有一叠似曾相识的照片,照片中的人物将逐一登场。他续写了那个囚犯的故事,却发现自己正在经历的一切也早已被记录在文稿中……', null);
INSERT INTO `book` VALUES ('59', 'https://img3.doubanio.com/view/subject/l/public/s29980542.jpg', '基本穿搭', '[日]大山旬 ', '2019-3', '四川人民出版社', '对穿衣搭配感到不耐烦,认为时尚很麻烦,穿什么都可以或者对衣服有着自己的想法但不够自信,本书就是为这样的人而准备的穿衣指南。不需要追随瞬息万变的时尚潮流,也不需要烦恼色彩搭配,只要掌握最低限度的知识和备齐常规单品,谁都能完成清爽得体的 80分搭配。', null);
INSERT INTO `book` VALUES ('60', 'https://img1.doubanio.com/view/subject/l/public/s30023469.jpg', '冒牌人生', '陈思安', '2019-4', '四川文艺出版社', '《冒牌人生》收录了十篇短篇小说。十个故事分别以城市中的怪人为主角,他们默默无闻地生存在城市主流生活的边缘地带:或是等待手术的性别认同障碍者,或是武艺高强而深藏不露的夜市摊主,或是卧底追凶的底层保安,或是甘于...', null);
INSERT INTO `book` VALUES ('61', 'https://img3.doubanio.com/view/subject/l/public/s30020685.jpg', '战争哀歌', '[越]保宁 ', '2019-4', '湖南文艺出版社', '《战争哀歌》超越了战争,战争是它的背景,它的内核是关于逝去的青春,关于美和伤痛!\n\n一场突如其来的战争打碎了阿坚和阿芳这对年轻情侣的生活,在血肉横飞的战争中,主人公阿坚成了幸存者,但战争带来的伤痛还远远没有平息。那些经历仍旧萦绕在阿坚的生活之中,被战争毁灭的不仅 仅是阿坚, 阿芳也遭遇了难以想象的梦魇。时间越长,阿坚越觉得自己不是活着,而是被困在这人世间。', null);
INSERT INTO `book` VALUES ('62', 'https://img1.doubanio.com/view/subject/l/public/s32268119.jpg', '胡椒的全球史', '[美] 玛乔丽·谢弗 ', '2019-3', '上海三联出版社', '看似不起眼的胡椒,却是家家餐桌必备。在中世纪时,更是欧洲达官显贵们的最爱、财富与地位的象征。黑胡椒原产于印度,距离欧洲各港口有十万八千里之远,取之向来不易。商人们对其供应来源不遗余力的追寻,成为世界史上一股重要的推动力量,促成全球贸易的兴起,重新划定了世界经济版图。', null);
INSERT INTO `book` VALUES ('63', 'https://img3.doubanio.com/view/subject/l/public/s30022074.jpg', '与病对话', '胡冰霜', '2019-3-31', '北京联合出版公司', '一部融合科普性与趣味性、兼具心理学与哲学意味的医学散文。\n\n一位满怀仁心的资深医者对几十年行医生涯的回望与省思。\n\n全书以真实的病例和鲜活的故事贯穿始终,作者从一位全科医生、心理学者的视角观察、解读疾病与患者身心之关系,厘清大众对诸多常见疾病的误解...', null);
INSERT INTO `book` VALUES ('64', 'https://img3.doubanio.com/view/subject/l/public/s29969945.jpg', '上帝笑了99次', '[英]彼得·凯弗', '2019-2', '北京联合出版公司', '一只美洲羊驼会坠入爱河吗?机器人能变成人吗?怎样才能不赢得公主青睐?人类一思考,上帝就发笑。在99个奇妙、怪诞、滑稽的问题背后,其实是99个烧脑的哲学、道德、法律领域的经典悖论,也是99道极富挑战性的大思考测试。本书内容覆盖了大多数常见哲学话题,包括形而上学、逻辑学、伦理学、语言哲学、政治哲学、自我认知、人际关系、美学、存在主义等,还配有20多幅漫画插图。在锻炼思维之外,本书也能帮我们建立个性化的哲学知识体系。', null);
INSERT INTO `book` VALUES ('65', 'https://img3.doubanio.com/view/subject/l/public/s30020426.jpg', '互联网算法', '[美] 菲斯曼等 ', '2019-4', '江西人民出版社', '只要你租过房子、上网买过东西、自己经营过企业,那么你就处在商业变革的前线。在这场变革中,亚马逊、谷歌、优步等不同以往的企业取得了史无前例的成功,而促成这场变革的不只是科技进步,还有经济学思想。\n\n在这本趣味横生的书中,我们会看到,经济思想的革命远比科技革命更宏大。从谷歌广告的算法,到网上购物规避欺诈,都要依靠经济学家建立的经济模型,甚至连互联网公司...', null);
INSERT INTO `book` VALUES ('66', 'https://img3.doubanio.com/view/subject/l/public/s32284134.jpg', '七侯笔录', '马伯庸', '2019-4-15', '湖南文艺出版社', '一个关于文化的离奇故事,一段关于文人的壮丽传说。\n\n几千年来,每一位风华绝代的文人墨客辞世之时,都会让自己的灵魂寄寓在一管毛笔之中。他们身躯虽去,才华永存,这些伟大的精神凝为性情不一的笔灵,深藏于世间,只为一句“不教天下才情付诸东流”的誓言。其中最伟大的七位古人,他们所凝聚的七管笔灵,被称为“管城七侯”。\n\n一位不学无术的现代少年,无意中邂逅了李白的青莲笔,命运就此与千年之前的诗仙交织一处,并为他开启了一个叫作笔冢的神秘世界。', null);
INSERT INTO `book` VALUES ('67', 'https://img3.doubanio.com/view/subject/l/public/s30025715.jpg', '中心与边缘', '[美] 希尔斯', '2019-3', '译林出版社', '美国著名社会学家爱德华·希尔斯的主要研究成果包括他对“克里斯玛”、“中心”和“边缘”等概念的解释,以及他对“大众社会”一词的修正,这些研究对分析政治和文化领导力以及社会凝聚力具有重要价值。本书对希尔斯数十载社会理论研究进行了全面而详细的总结,为解释与探究当代社会的结构与变化提供了极具科学性的参考依据。', null);
INSERT INTO `book` VALUES ('68', 'https://img3.doubanio.com/view/subject/l/public/s30019703.jpg', '水浒群星闪耀时', '李黎', '2019-4', '上海文艺出版社', '本书以众所周知的梁山英雄为写作对象,重点书写其上山后、招安前的日常生活,涉及他们的喜怒哀乐、同类中人、乡愁怀旧、未来憧憬、命运追问等。书中涉及宋江、武松、鲁智深、李俊、燕青等等耳熟能详的人物而显得有些“改编”与水浒研究的意味,但鉴于所有人物皆为虚构,本书稿的内容是虚构之上的虚构,旨在宏大叙事的语境下突出个人的细微之处和命运感。', null);
INSERT INTO `book` VALUES ('69', 'https://img3.doubanio.com/view/subject/l/public/s30019483.jpg', '谋杀狄更斯', '[美] 丹·西蒙斯 ', '2019-4', '上海文艺出版社', '“狄更斯的那场意外灾难发生在1865年6月9日,那列搭载他的成功、平静、理智、手稿与情妇的火车一路飞驰,迎向铁道上的裂隙,突然触目惊心地坠落了。”', null);
INSERT INTO `book` VALUES ('70', 'https://img3.doubanio.com/view/subject/l/public/s31469910.jpg', '像艺术家一样思考', '[英] 威尔·贡培兹', '2019-4', '湖南美术出版社', '归纳成就艺术大师的 10 个关键词\n\n揭示大师们的创作秘辛\n\n凝聚 BBC 艺术频道主编威尔·贡培兹职业生涯的所见、所知、所想\n\n·\n\n威尔·贡培兹是你能遇到的最好的老师\n\n——《卫报》', null);
-- ----------------------------
-- Table structure for category
-- ----------------------------
DROP TABLE IF EXISTS `category`;
CREATE TABLE `category` (
`id` int(11) NOT NULL,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of category
-- ----------------------------
-- ----------------------------
-- Table structure for user
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册