流星反应管理员设置
Meteor-react Admin Setup
我想使用 react
和 meteor
建立管理员身份验证我已经在客户端文件夹中使用 React
设置了以下登录表单:
class Admin extends Component {
onSubmit(event) {
event.preventDefault();
const self = this;
const email = $(event.target).find('[name=email]').val();
const password = $(event.target).find('[name=password]').val();
Meteor.loginWithPassword(email, password, function (err) {
if (err) console.log(err.reason);
});
}
render() {
return (
<div className='flex-login'>
<form onSubmit={this.onSubmit}>
<div className='login'>
<div className='welcome'>
<p><strong>Greetings</strong>, my dear master :) </p>
<p>Did anything surprise you today?</p>
</div>
<input name='email' type="email" placeholder="Name" />
<input name='password' type="password" placeholder="Secretword" />
<button type="submit">Enter</button>
</div>
</form>
</div>
);
}
}
并已将以下 Accounts.createUser 添加到服务器 main.js 文件中:
import { Meteor } from 'meteor/meteor';
import { Accounts } from 'meteor/accounts-base';
// Creating user
Meteor.startup(() => {
if (Meteor.users.find().count === 0) {
Accounts.createUser({
email: 'master@mail.com',
password: 'master'
});
}
});
当我尝试使用定义的帐户信息登录时,我收到 console.log User not found
。
你能解释一下我缺少什么来达到这个结果吗?
如果您能向我解释或向我指出一些外部资源,我将不胜感激 如何为管理员自定义安全登录以使其保存在 production version
.
这些身份验证的目的是允许进一步访问管理集合的信息。
我认为没有创建管理员,因为还有其他用户 Meteor.users.find().count()
的值永远不会为零。您应该检查角色 'admin' 的用户是否为零并创建管理员。您可以使用此处的角色包 alanning:roles 为用户添加角色。
希望对您有所帮助
谢谢
您在 Meteor.users.find().count()
中使用 count 而不是 count()
我想使用 react
和 meteor
建立管理员身份验证我已经在客户端文件夹中使用 React
设置了以下登录表单:
class Admin extends Component {
onSubmit(event) {
event.preventDefault();
const self = this;
const email = $(event.target).find('[name=email]').val();
const password = $(event.target).find('[name=password]').val();
Meteor.loginWithPassword(email, password, function (err) {
if (err) console.log(err.reason);
});
}
render() {
return (
<div className='flex-login'>
<form onSubmit={this.onSubmit}>
<div className='login'>
<div className='welcome'>
<p><strong>Greetings</strong>, my dear master :) </p>
<p>Did anything surprise you today?</p>
</div>
<input name='email' type="email" placeholder="Name" />
<input name='password' type="password" placeholder="Secretword" />
<button type="submit">Enter</button>
</div>
</form>
</div>
);
}
}
并已将以下 Accounts.createUser 添加到服务器 main.js 文件中:
import { Meteor } from 'meteor/meteor';
import { Accounts } from 'meteor/accounts-base';
// Creating user
Meteor.startup(() => {
if (Meteor.users.find().count === 0) {
Accounts.createUser({
email: 'master@mail.com',
password: 'master'
});
}
});
当我尝试使用定义的帐户信息登录时,我收到 console.log User not found
。
你能解释一下我缺少什么来达到这个结果吗?
如果您能向我解释或向我指出一些外部资源,我将不胜感激 如何为管理员自定义安全登录以使其保存在 production version
.
这些身份验证的目的是允许进一步访问管理集合的信息。
我认为没有创建管理员,因为还有其他用户 Meteor.users.find().count()
的值永远不会为零。您应该检查角色 'admin' 的用户是否为零并创建管理员。您可以使用此处的角色包 alanning:roles 为用户添加角色。
希望对您有所帮助
谢谢
您在 Meteor.users.find().count()
中使用 count 而不是 count()