Friday, January 30, 2015

Re: Best Practices Django Questions


On 30 Jan 2015 21:03, "G Z" <zukeru@gmail.com> wrote:
>
> Hello, I'm in the design stages of a site that I'm building. It is going to be a basic social media site for a game I'm designing in unity. I'm not entirely sure how to do some of the things I want to in Django. Thus, my first question is generally best practices question as well as a how do I do this question.
>
> Qustion #1: How do I set up my models field so that when a user uploads an image to a filefield it attaches the users name to the file that is being uploaded? Should I do this in the view or in the database?
>

Database. You can adjust the name after validation and just before it is saved to the database so you can just override the save method.

> Question #2: Examine my model design and tell me what I can do better, if I'm missing anything etc. I'm new to django so go easy. I didn't do the def and functions and class stuff just the over all structure. If it would be better if I posted that let me know and I will.
>
> Question#3 How do I make the page when a user logs in resolve to his username, and how do I use the username as the url so when you click on a list of friends it uses that friends username as the url for their profile and resolves to thier page, a quick overview on the best way to do this would be just fine. Just point me and kinda explain the theory and I'm sure I can figure out the rest. 
>
> Please just help me think of things I need to worry about design with django im just starting and I dont have a good base to go on.
>
>
> User
>
> id = models.AutoField(primary_key=True)
>
> username = models.CharField(max_length=4000)
>
> password = models.CharField(max_length=4000)
>
> email = models.CharField(max_length=4000)
>
> phone = models.CharField(max_length=4000)
>
> profile_image = models.FileField()
>
> about = models.CharField(max_length=4000)
>
> hometown = models.CharField(max_length=4000)
>
> job = models.CharField(max_length=4000)
>
> score = models.CharField(max_length=4000)
>
> hobbies = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
>
> Album
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> name = models.CharField(max_length=4000)
>
> imageid = models.ForeignKey(Image)
>
> datetime = models.DateField()
>
>
> Image
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> image = models.FileField()
>
> imgdesc = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
> Image_Comment
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> imageid = models.ForeignKey(Image)
>
> comment = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
>
> Image_Likes
>
> id = models.AutoField(primary_key=True)
>
> imageid = models.ForeignKey(Image)
>
> userid = models.ForeignKey(User)
>
> datetime = models.DateField()
>
>
> Post
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> message = models.CharField(max_length=4000)
>
> image = models.FileField()
>
> embed_link = models.CharField(max_length=4000)
>
> liked_count = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
>
> Post_Comment
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> postid = models.ForeignKey(Post)
>
> comment = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
>
> Post_User_Likes
>
> id = models.AutoField(primary_key=True)
>
> postid = models.ForeignKey(Post)
>
> userid = models.ForeignKey(User)
>
> datetime = models.DateField()
>
>
> User_Friends
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> friendid = models.ForeignKey(User)
>
> blocked = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
>
> Reported
>
> id = models.AutoField(primary_key=True)
>
> userid = models.ForeignKey(User)
>
> friendid = models.ForeignKey(User)
>
> comment = models.CharField(max_length=4000)
>
> datetime = models.DateField()
>
>
> --
> You received this message because you are subscribed to the Google Groups "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
> To post to this group, send email to django-users@googlegroups.com.
> Visit this group at http://groups.google.com/group/django-users.
> To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/71830c67-c98c-4e38-95f8-235f7c1b9d81%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CA%2BWjgXP%2BJe9%2Bpv-N6bskn0UH9MjPyoO-S58_X3hPJbmJ6yF%3DQw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment