Solved

Drupal Node and User Referencing - Chaining Nodes and Users

Posted on 2009-05-07
4
2,227 Views
Last Modified: 2012-05-06
Hi experts,

I'm new to drupal 6, and have a few questions that I just can't seem to find answers to on web.

I am messing around with a social network for musicians, where I want users to be able to upload multiple albums containing multiple songs.  I have many of the required modules for this already installed, I just can't figure out how to connect a user to their albums and songs.  I understand I will need Views in order to display the results, but I am confused when it comes to creating the content-types and Relationships.

Here's what I have gathered so far:
I need two content-types: Albums and Audio
Link the albums to the users with the node reference URL module?
Each song needs a node reference pointing to the album.

Obviously, I don't want users to be able to create albums under another users id, so would referencing this ID thru the Node Reference URL be appropriate?

Similarly, I don't want people to be able to insert songs into an album they aren't the owner of.

Am I on the right track?  Any and all help is greatly appreciated.
0
Comment
Question by:aaronDressler
  • 2
  • 2
4 Comments
 
LVL 5

Expert Comment

by:stephencolson
ID: 24327795
This can effectively be achieved with the basic Drupal permissions set. If you have a content type called "Album" that has a CCK field "Track" where people can upload 1..n different song files, all you have to do is give a user roll node create permission on "Album" and "Can edit own Album" but not "Can edit any Album." The author of the Album node will be recorded by Drupal so you won't have to worry about that angle.

You really shouldn't have to use node reference unless you want to do something a lot more complicated, but that may not be a good idea to start out.

As far as having the profiles of the different musicians, I would check out the "Content Profile" module (http://drupal.org/project/content_profile) for tying all of these together.
0
 

Author Comment

by:aaronDressler
ID: 24328555
Thank you for the reply.  I don't think I have the ability to add song files to the album content type.  File Type is not listed in the available CCK field types.  Is there a widget that I'm missing?  Then effectively, every song would have an Album node?  Or can I insert multiple songs into one Album through some multiple file uploader?

Also, I currently have advanced_profile module, what are the advantages of content_profile?

Thanks for your help!
0
 
LVL 5

Accepted Solution

by:
stephencolson earned 500 total points
ID: 24330963
Grab the filefield cck module (http://drupal.org/project/filefield) and when you enable it and configure it in the content type modification screens, you can easily enable it to allow multiple files to be attached to the same album very easily.

advanced_profile is pretty sweet, but as it relies on panels 2, it is inherently broken. Panels 2 never came out of development in to a release version and they decided to skip it entirely and do a huge re-write for Panels 3. content_profile on the other hand may not have as many super-easy features without doing more to it, but it is actually stable and I would feel much more comfortable having it in a production environment.
0
 

Author Closing Comment

by:aaronDressler
ID: 31579046
Thank you very much!  You've been more than helpful!
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Envision that you are chipping away at another e-business site with a team of pundit developers and designers. Everything seems, by all accounts, to be going easily.
I've been asked to discuss some of the UX activities that I'm using with my team. Here I will share some details about how we approach UX projects.
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.
Learn how to create flexible layouts using relative units in CSS.  New relative units added in CSS3 include vw(viewports width), vh(viewports height), vmin(minimum of viewports height and width), and vmax (maximum of viewports height and width).

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question