GWという混んでて高い時期に鳥栖戦。正直きつかったですが平成最後の大遠征をやるしかない!!!そして勝つしかない!!
その思いで行ってきましたよ。
続きを読む
あの日僕に衝撃が走った。
ついに木村朱美さんと会えないまま生涯を終えるのか・・・。
・・・。
しかし!!!
去年のフライデーナイトJリーグ。
フライデーだからフライデーの表紙に木村朱美さんをというフロンターレ様の粋なはからない(いつものギャグ)によってついに木村朱美さんと会うことができたのでした。
ありがとう金J!!金J最高!!!
続きを読むdjangoでは以下のように記載するとモデルのデータがテンプレートに渡されます。
context = { 'キー名': モデル名.objects.all() } return render(request, 'アプリケーション名/html名.html', context)
でも状況によっては全ては表示したくないということもあるはず。
そんな時はこう書き換えます。
context = { 'キー名': モデル名.objects.filter(フィルターをかけたい条件) } return render(request, 'アプリケーション名/html名.html', context)
僕の場合はプライマリーキーと紐づいたモデルのみを出力したい!という時にfilterをかけるパターンしか作ったことはないのですが、その場合こうなります。
context = { 'キー名':モデル名.objects.filter(pk=pk), }
分かりにくいですね。全容を書きましょう。
def 関数名(request, pk): context = { 'キー名':モデル名.objects.filter(pk=pk), } return render(request, 'アプリケーション名/使用したいhtml名.html', context)
(request,pk)部分がurl部分に表示されているプライマリーキー。
それを(pk=pk)で代入します。
ポイントはpkの部分でurls.pyの部分に
path('<int:pk>/', 使用する関数, 名前'),
と記載するとモデルのプライマリーキーごとにurlに数字があてがわれるので、urlに記載された数値とモデルが一つずつ持っているプライマリーキーが一致したものだけが表示されるようになります。
ちなみに以下のように書くと空欄の場合にfilterが発動して弾いてくれます。
.filter(フィルターをかけたい条件).exclude(任意の名前__exact=""),
ちなみにdjagoチュートリアルを見ているとこんな記載があります。
https://docs.djangoproject.com/ja/2.1/intro/tutorial04/
html部分なんですが、
{% for choice in question.choice_set.all %} <input type="radio" name="choice" id="choice{{ forloop.counter }}" value="{{ choice.id }}"> <label for="choice{{ forloop.counter }}">{{ choice.choice_text }}</label><br> {% endfor %}
以前フィルター関係で苦労した部分だったんですが、これはquestionに紐づいた、choiceをall表示するって意味です。(ルー語)
questionに紐づいたchoiceとはmodels.pyの
from django.db import models class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') class Choice(models.Model): question = models.ForeignKey(Question, on_delete=models.CASCADE) choice_text = models.CharField(max_length=200) votes = models.IntegerField(default=0)
この部分のことで
question = models.ForeignKey(Question, on_delete=models.CASCADE)
これでclass ChoiceはQuestionに紐づくことができます。
こうすると紐づかれるクラス名(小文字).紐づくクラス名(小文字)_set.all
question.choice_set.all
という書き方でQuestionに紐づいたChoiceがすべて出力されるようになるのです。 もちろん<int:pk>部分が無ければ普通に全部表示されるだけなので特に意味はないですがこのプライマリーキーのQuesionに紐づくChoiceだけを表示する。 というときにはこう書けるのです。
ベルマーレのイヤーDVDが話題になっていて、ついにすっきりでも特集されるそうです。
2018年のイヤーDVDで話題になっているのは清水戦のあとのロッカールーム。
もうこれに関しては本当にすごくて、1年間チームをおってきた僕らは間違いなくこの試合はターニングポイントだったと言えるのです。
https://store.jleague.jp/club/shonan/item/P0000034137/
(在庫無しとなっていますが4/9午後に再入荷予定)
続きを読む
2019年J1第5節 湘南ベルマーレ対清水エスパルス戦のMVPは?というテーマでアンケートを実施しました。
実はアンケートの際にリンクを間違えてしまって投票できなかった方がいたようです。申し訳ないです。
続きを読む
python,djangoでのhtmlへの表示方法。(関数編+汎用ビュー編)。 早速関数編からやっていきましょう!
続きを読む