2016-07-22 6 views
0

を流星反応する私は、次のログインフォームのクライアントフォルダ内Reactを使用して設定したreactmeteorを使用して管理認証を構築したいと思います:は、管理セットアップ

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> 
    ); 
    } 
} 

し、以下を追加しました

import { Meteor } from 'meteor/meteor'; 
import { Accounts } from 'meteor/accounts-base'; 

// Creating user 
Meteor.startup(() => { 
    if (Meteor.users.find().count === 0) { 
    Accounts.createUser({ 
     email: '[email protected]', 
     password: 'master' 
    }); 
    } 
}); 

私はにconsole.log User not foundを受ける定義されたアカウント情報を使用してログインしよう:サーバーmain.jsファイルにAccounts.createUser。

結果を得るために私が紛失していることを説明してもらえますか?

production versionに保存するために、管理者のためにカスタムセキュリティで保護されたログインを行う方法について、私に説明したり、いくつかの外部リソースを指摘したりすることができます。

これらの認証の目的は、コレクションの情報をさらに管理することです。

答えて

0

をお役に立てば幸いです。(カウント)

+0

あなたはそうです問題だった。今、それは動作します、ありがとうございます。実稼働バージョンの流星アプリのサーバー側に管理者アカウント情報を保存することはできますか? – volna

+0

あなたは何を意味するのか理解できませんでした。達成しようとしていることを説明してください。 –

+0

私はカスタム管理パネルを構築したいので、管理者アカウントを何らかの方法で定義してMeteor.userID()を使用して管理者ページの認証と検証を行う必要があります。 – volna

0

他のユーザーがいるので管理者は作成されていないと思うのですが、Meteor.users.find().count()の値は決してゼロになることはありません。 「admin」ロールを持つユーザーがゼロであるかどうかを確認し、管理者を作成する必要があります。ここでロールパッケージalanning:rolesを使用して、ユーザーにロールを追加することができます。

は、それはあなたが)Meteor.users.findのカウントの代わりに、数を()(使用している

おかげ

+0

実際ときI、提案khemいただきありがとうございますコンソールに入力してくださいMeteor.users.find()。count()私は0を受け取る: – volna

+0

あなたが使用しているメソッドcount()をmeteor.users.find()でカウントしてくださいcount() –

関連する問題