Re: Best Practices Django Questions

24 views
Skip to first unread message

Babatunde Akinyanmi

unread,
Jan 30, 2015, 8:02:40 PM1/30/15
to django...@googlegroups.com


On 30 Jan 2015 21:03, "G Z" <zuk...@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...@googlegroups.com.
> To post to this group, send email to django...@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.

Reply all
Reply to author
Forward
0 new messages