macにて開発しています
##行ないたいこと
ユーザが作成したメモを表示するサイトを作っています。
ユーザはtwitterのみでログインでき、アカウント一つにつきモデルは一つです。
ここで、
1.twitterアカウントとモデルを結びつける方法
2.uuidをprimarykeyとし、作成されたURLへアクセスする方法を知りたいです。
また、その後は上記のページには誰でもアクセスできるようにし、メモを作成したユーザのみに編集等の作業ができるようにする予定です。
##これまでに行なった作業
1.メモ用のモデル作成
python
1import uuid 2from django.db import models 3 4#画像を複数投稿させるための処理 5def get_memo_image_path(instance, filename): 6 return 'image-{0}/{1}'.format(instance.id, filename) 7 8 9class Memo(models.Model): 10 id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) 11 title = models.CharField(max_length=20) 12 content = models.TextField(max_length=5000) 13 image = models.ImageField(upload_to=get_memo_image_path, null=True, blank=True) 14 posted_date = models.DateTimeField(auto_now=True)
2.social-auth-app-djangoによるtwitterログイン機能の実装
こちらを真似て作りました。
3.url.py とviewなど
python
1urlpatterns = [ 2 path('', IndexView.as_view(), name="index"), 3 path('<uuid:pk>', MemoDetailView.as_view(), name="detail"), 4 path('<uuid:pk>/update', MemoUpdateView.as_view(), name="update"), 5 path('<uuid:pk>/delete', MemoDeleteView.as_view(), name="delete"), 6 7 path('create/', MemoCreateView.as_view(), name="create"), 8 path('admin/', admin.site.urls), 9 path('', include('social_django.urls')), 10] 11urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
以上になります。
一部、または検索用にキーワードを教えていただくだけでも助かります。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/03/29 17:33
2019/03/30 01:28
退会済みユーザー
2019/03/30 01:50