我刚刚启动了一个新的 nodejs 应用程序,其中将包含大量用于创建和编辑/更新数据库值的表单。我的问题是:如果给定的数据无效,我该如何重新填充表单条目?
示例:有人尝试登录。如果凭据错误,我将使用以下内容再次显示登录页面:
res.render('sessions/new')
问题是,用户名没有填充请求数据。我想知道如何既简单又干净地做到这一点。由于没有form_for
类似的rails,我想我必须手动实现,对吧?我的第一种方法是绕过请求正文/参数作为render
函数的本地变量,并在我的翡翠模板中设置值,如下所示:
// In controller/route
res.render('sessions/new', req.body)
// In template
input(type='text', name='username', value=locals.username)
有没有更好或更不显眼的解决方案?我的意思是上面的例子很有效并且很容易实现,只是想知道我是否遗漏了什么。这对于向无效表单字段添加错误类等内容也很有趣。在网上真的找不到任何东西。
提前致谢!