在ember js中检索记录
Retrieving records in ember js
我是ember js的新手。我有一个表格&当用户点击提交时,我要检查用户名&用户输入的密码已经在我的模型/数据库中。我试着跟着,但没用。请帮我解决这个问题。
模板<h2>Welcome to my blog</h2>
<form {{action 'exist' on="submit"}}>
<dl>
<dt>User Name:<br> {{textarea value=uName cols="20" rows="1"}}</dt>
<dt>Password:<br> {{textarea value=passw cols="20" rows="1"}}</dt>
</dl>
<button type="submit" class="btn btn-primary">Login</button>
</form>
模型import DS from 'ember-data';
export default DS.Model.extend({
FirstName: DS.attr('string'),
UserName: DS.attr('string'),
Password: DS.attr('string'),
PermissionList: DS.attr('array')
});
路线import Ember from 'ember';
export default Ember.Route.extend({
model: function() {
return this.store.find('user');
}
});
控制器import Ember from 'ember';
export default Ember.Controller.extend({
actions: {
ght: function () {
var uName = this.get('uName');
var passw = this.get('passw');
if (this.store.find('user', {
userName: this.get('uName')
})) {
alert('Already exist');
}
}
}
});
//每次输入都显示此警告。即使它们不在模型中
因为store.find()
总是返回一个承诺,它是一个对象,if
的条件总是求值为真。你应该做的是等待promise解析然后做检查,比如
// ...
var uName = this.get('uName');
this.store.find('user', {
userName: uName
}).then(function(user) {
if(user) {
alert('Already exist');
} else {
}
});
// ...
这个表单看起来像一个登录表单。如果我的假设是正确的,你不显示这个表单,如果用户已经登录(在这种情况下,会话将有用户信息)。在情况下,如果用户没有登录,你将不得不显示形式。我认为您不需要在商店中搜索用户。只需将用户发送/保存到服务器,让用户在服务器端找到逻辑并相应地发送响应。在代码端,你可以通过处理。then of promises来显示存在的结果。
如果您的用例不同,您可以使用查询(多个记录)。和queryRecord用于单个记录
查询从文档中复制粘贴
// GET to /persons?filter[name]=Peter
this.store.query('person', { filter: { name: 'Peter' } }).then(function(peters) {
// Do something with `peters`
});
// GET to /persons?filter[email]=tomster@example.com
this.store.queryRecord('person', { filter: { email: 'tomster@example.com' } }).then(function(tomster) {
// do something with `tomster`
});
//在移动设备上,如果没有帮助,将添加代码
相关文章:
- 使用jQuery/Ajax从数据库中检索记录
- Firebase:如何从存在特定密钥的数据中检索记录
- 在检索到最后一条记录后从 PostgreSQL 中提取记录
- MongoDB 2.0.0 驱动程序,按 ID 检索记录时出现问题
- AngularJS基于日期检索JSON记录
- 检索和更新在MS CRM中不起作用的记录
- 根据关系 1:N 检索其他实体的记录
- 如何基于 N:N 关系检索 SOAP 中的相关记录
- 在 Backbone/Rails 中检索子记录
- 使用restangular在angularJs上基于url参数检索记录
- 使用$http.get检索单个记录
- 当父密钥在Firebase中未知时,正在检索子记录
- 在ember js中检索记录
- 使用jquery ajax从xml中检索单个记录
- Sequelize—如何从查询自动检索子记录到父表
- 检索SalesForce联系人活动历史记录
- Firebase对特定记录的索引进行排序和检索
- HTML5SQL使用SELECT语句从web数据库检索记录
- 如何使用环回api和angularjs检索最新创建的记录
- 使用ajax检索记录并在php中显示它们