-
Notifications
You must be signed in to change notification settings - Fork 8.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[zh-cn] fixed some flaws and added some new translation #23211
Conversation
Preview URLs Flaws (1)URL:
(comment last updated: 2024-08-30 02:50:43) |
@@ -3,35 +3,31 @@ title: 书本实例列表页面 | |||
slug: Learn/Server-side/Express_Nodejs/Displaying_data/BookInstance_list_page | |||
--- | |||
|
|||
接下来,我们将实作图书馆中所有书本实例 (`BookInstance`) 的列表页面。这个页面需要包含与每个 `BookInstance` (链接到其详细信息页面) 关联的书本 `Book` 标题,以及`BookInstance`模型中的其他信息,包含每个副本的状态,印记和唯一 ID。唯一 ID 的文字,应该链接到 `BookInstance` 详细信息页面。 | |||
接下来,我们将实现图书馆中所有书本实例 (`BookInstance`) 的列表页面。这个页面需要包含与每个 `BookInstance` (链接到其详细信息页面) 关联的书本 `Book` 标题,以及 `BookInstance` 模型中的其他信息,包含每个副本的状态、印记和唯一 ID。唯一 ID 的文本,应该链接到 `BookInstance` 详细信息页面。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
注意标点符号使用
接下来,我们将实现图书馆中所有书本实例 (`BookInstance`) 的列表页面。这个页面需要包含与每个 `BookInstance` (链接到其详细信息页面) 关联的书本 `Book` 标题,以及 `BookInstance` 模型中的其他信息,包含每个副本的状态、印记和唯一 ID。唯一 ID 的文本,应该链接到 `BookInstance` 详细信息页面。 | |
接下来,我们将实现图书馆中所有书本实例(`BookInstance`)的列表页面。这个页面需要包含与每个 `BookInstance`(链接到其详细信息页面)关联的书本 `Book` 标题,以及 `BookInstance` 模型中的其他信息,包含每个副本的状态、下属品牌和唯一 ID。唯一 ID 的文本应该链接到 `BookInstance` 详细信息页面。 |
|
||
## 控制器 | ||
|
||
`BookInstance`列表控制器函数,需要获取所有书本实例的列表,填充关联的书本信息,然后将列表传递给模板以进行呈现。 | ||
`BookInstance` 列表控制器函数,需要获取所有书本实例的列表,填充关联的书本信息,然后将列表传递给模板进行呈现。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
`BookInstance` 列表控制器函数,需要获取所有书本实例的列表,填充关联的书本信息,然后将列表传递给模板进行呈现。 | |
`BookInstance` 列表控制器函数需要获取所有书本实例的列表,填充关联的书本信息,然后将列表传递给模板进行渲染。 |
|
||
## 控制器 | ||
|
||
`BookInstance`列表控制器函数,需要获取所有书本实例的列表,填充关联的书本信息,然后将列表传递给模板以进行呈现。 | ||
`BookInstance` 列表控制器函数,需要获取所有书本实例的列表,填充关联的书本信息,然后将列表传递给模板进行呈现。 | ||
|
||
打开 **/controllers/bookinstanceController.js**。找到导出的 `bookinstance_list()` 控制器方法,并用以下代码替换它(更改后的代码以粗体显示)。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
打开 **/controllers/bookinstanceController.js**。找到导出的 `bookinstance_list()` 控制器方法,并用以下代码替换它(更改后的代码以粗体显示)。 | |
打开 `/controllers/bookinstanceController.js`,找到导出的 `bookinstance_list()` 控制器方法,并用以下代码替换它。 |
}); | ||
}); | ||
}; | ||
// 呈现所有书本实例 (BookInstance) 的列表 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// 呈现所有书本实例 (BookInstance) 的列表 | |
// 呈现所有书本实例(BookInstance)的列表 |
``` | ||
|
||
此方法使用模型的`find()`函数,返回所有`BookInstance`对象。然后它将一个调用,以菊花链方式连接到`populate()`,附加书本`book`字段,这将使用完整的`Book`文档,替换每个`BookInstance`存储的书本 ID。 | ||
路由处理器调用 `BookInstance` 模型的 `find()` 函数,然后链式调用 `populate()` 函数,并将 `book` 字段作为参数传递——这将用完整的 `Book` 文档替换每个 `BookInstance` 对象中的**书本 ID(ObjectId)**。最后,在链式调用的末尾调用 `exec()` 函数来执行查询操作并返回一个 **Promise**。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
路由处理器调用 `BookInstance` 模型的 `find()` 函数,然后链式调用 `populate()` 函数,并将 `book` 字段作为参数传递——这将用完整的 `Book` 文档替换每个 `BookInstance` 对象中的**书本 ID(ObjectId)**。最后,在链式调用的末尾调用 `exec()` 函数来执行查询操作并返回一个 **Promise**。 | |
路由处理器调用 `BookInstance` 模型的 `find()` 函数,然后链式调用 `populate()` 函数,并将 `book` 字段作为参数传递——这将用完整的 `Book` 文档替换每个 `BookInstance` 对象中的书本 id。最后,在链式调用的末尾调用 `exec()` 函数来执行查询操作并返回一个 **Promise**。 |
成功时,传递给查询的回调,会呈现 **bookinstance_list** (.pug) 模板,并将标题`title`和书籍实例列表`bookinstance_list`作为变量传递。 | ||
路由处理器使用 `await` 关键字来等待 **Promise** 对象,直至 **Promise** 对象被解决才会执行后续代码。如果 **Promise** 对象被兑现,查询结果将被保存到 `allBookInstances` 变量中,然后路由处理器继续执行。 | ||
|
||
代码最后的部分调用 `render()` 函数,指定 **bookinstance_list** (.pug) 模板,并将 `title` 和 `bookinstance_list` 的值传递到模板中。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
代码最后的部分调用 `render()` 函数,指定 **bookinstance_list** (.pug) 模板,并将 `title` 和 `bookinstance_list` 的值传递到模板中。 | |
代码最后的部分调用 `render()` 函数,指定 **bookinstance_list**(.pug)模板,并将 `title` 和 `bookinstance_list` 的值传递到模板中。 |
``` | ||
|
||
这个视图与其他视图非常相似。它扩展了布局,替换*内容*区块,显示从控制器传入的标题 `title`,并遍历 `bookinstance_list` 中的所有书籍副本。对于每个副本,我们都会显示它的状态(用颜色编码),如果书本不可用,则显示其预期返回日期。这里引入了一个新功能——我们可以在标签之后使用点符号表示法,来指定一个类别。因此,`span.text-success` 将被编译为 `<span class="text-success">`(也可以用 Pug 编写为 `span(class="text-success")`)。 | ||
这个视图与其他视图非常相似。它扩展了布局,替换了内容 _content_ 区块,显示了从控制器传入的标题 `title`,并遍历了 `bookinstance_list` 中的所有书籍副本。对于每个副本,我们都会显示它的状态(用颜色编码),如果书本(book)不可用,则显示其预期返回日期。这里引入了一个新功能——我们可以在标签之后使用点符号表示法来指定一个类别。因此,`span.text-success` 将被编译为 `<span class="text-success">`(也可以用 Pug 编写为 `span(class="text-success")`)。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个视图与其他视图非常相似。它扩展了布局,替换了内容 _content_ 区块,显示了从控制器传入的标题 `title`,并遍历了 `bookinstance_list` 中的所有书籍副本。对于每个副本,我们都会显示它的状态(用颜色编码),如果书本(book)不可用,则显示其预期返回日期。这里引入了一个新功能——我们可以在标签之后使用点符号表示法来指定一个类别。因此,`span.text-success` 将被编译为 `<span class="text-success">`(也可以用 Pug 编写为 `span(class="text-success")`)。 | |
这个视图与其他视图非常相似。它扩展了布局,替换了内容 _content_ 区块,显示了从控制器传入的标题 `title`,并遍历了 `bookinstance_list` 中的所有书籍副本。对于每个副本,我们都会显示它的状态(用颜色编码),如果书本(book)不可用,则显示其预期返还日期。这里引入了一个新特性——我们可以在标签之后使用点符号表示法来指定一个类别。因此,`span.text-success` 将被编译为 `<span class="text-success">`(也可以用 Pug 编写为 `span(class="text-success")`)。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
Description
fixed some flaws and added some new translation for bookInstance-list-page
Motivation
Offer the latest translations for readers
Additional details
Related issues and pull requests