DesignOpen / board

A board of open projects searching for designers.
9 stars 1 forks source link

Scaffold models based on uml #5

Open GarthDB opened 9 years ago

davidweinfls commented 9 years ago

Basically two tables, user and post.

GarthDB commented 9 years ago

@davidweinfls yup. Did you put it in a branch? Ready for a pull request.

davidweinfls commented 9 years ago

In order to handle many-to-many relationship between users and posts, I think there should be an additional relationship table.

img_1004

@GarthDB @ngovkevin @elaineyhwang

So basically three tables. User, post and Has_post

This new Has_post table should have two attributes "post_number" and "user_id" to store the relationship between User and Post.

GarthDB commented 9 years ago

Yes, projects can have multiple owners on GitHub, but there should only be a single owner associated with a post. Let's do one to many. @davidweinfls

Moodycomputer commented 9 years ago

In theory, we should be able to get away without storing users.

We just need to associate the user in session with a job, look to see if they have an ownership permission on the post, or if they are the one who posted it.

GarthDB commented 9 years ago

That's true.

The simpler the better. You could store the github username or id

Moodycomputer commented 9 years ago

yeah, when they log in run a quick query to pull back any jobs that match a creatorId or something with their user id and make the list out of that.

We're not storing anything user related that's unique to us, so no real need to store them at all

GarthDB commented 9 years ago

:+1:

davidweinfls commented 9 years ago

Interesting.

@terracomma What do you mean by associating the user in session with a job? My understanding for that is for every job post it should have a owner and a bunch of contributors. We can store the owner id in its owner attribute and store a set of contributors in the job's contributor attribute.

GarthDB commented 9 years ago

We don't need contributors at this point.

We just want owners to post what they need and designers can contact them.

davidweinfls commented 9 years ago

Makes our lives easier. :+1:

GarthDB commented 9 years ago

That's the goal. Mvp first. We can add features later.

Any ideas have for enhancement can be put in other github issues.