0

I am looking to implement a website where access to pages and their related pages is restricted to certain users.

How I thought it might work is that a user (or users) would be assigned to the entry. This user should then have front end access to this entry and its related entries.

So, the template would check the currentUser value against the user in the entry, and also against the relatedTo entries.

Is there a better, more efficient way? I feel this may suffer from performance problems as the number of related entries grows. Any advice or guidance would be greatly appreciated!

2

From experience, in terms of ui/ux AND ease in front end stages, If you can do things the other way round, do that.

So attached entries to users basically. When you have a new user, you add entries in one place vs adding the user on every single entries which, if you have loads of could turn into a bit of a mission.. You'll find this way round easier to maintain, in the front end, you can just access related entries through the currentUser very easily instead of going through entries.

This is my personal preference based on recent experience but I don't know how much flexibility you have in terms of development so it may not be possible for you.

  • Thank you for your answer. I would've thought the opposite from a UX perspective. For example, if I wish to assign multiple users to an entry, I can do it in one place (the entry). By doing it the way you've suggested, I would have to assign the entry in each user's profile. It also means that at a glance in the entries section, there is no way for me to determine who has access to each entry. I can see your argument from a template perspective however. – Kyle Nov 17 '15 at 14:21
  • Ha! I guess I don't have your full use case so it depends :) – Oli Nov 17 '15 at 15:05
  • Yeah, I appreciate that! :) – Kyle Nov 17 '15 at 15:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.