私は初めての Web アプリを軌道に乗せようとしているので、これが一種の初心者の質問であることは十分承知しています。
バックエンドにノード、エクスプレス、モンゴを使用し、ストームパスがユーザーのログイン/認証とビューのジェイドを提供しています。ログイン機能は正常に動作します。マネージャーではないユーザーの [新しいスケジュールのアップロード] ボタンを非表示にしたいだけです。
// app.js
...
app.use(stormPathmiddleware);
app.get('/', function(req, res) {
res.render('home', {
title: 'Welcome'
});
);
app.get('/upload', stormpath.groupsRequired(['Enforced']), function(req, res) {
res.render('upload', {
title: 'Upload Excel File'
});
});
....
私はこれを使用したい 2 つのグループの人々を持っています: マネージャーと他の全員です。だからhome.jade:
html
head
title=title
link(href='//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css', rel='stylesheet')
body
div.container
div.jumbotron
h1 Hello!
if user
p Welcome, #{user.fullName}
p
a.btn.btn-primary(href="/upload") Upload New Schedule
br
br
a.btn.btn-primary(href="/logout") Logout
else
p Login now to see this weeks schedule.
p
a.btn.btn-primary(href="/login") Login now
最初のグループ (管理者) としてログインしていない人にアップロード ボタンを非表示にするにはどうすればよいですか? ミドルウェアはうまく機能します。つまり、マネージャーではない人がそのボタンをクリックしようとするとエラーページが表示されますが、私はむしろそれを非表示にします.