2016-10-08 8 views
0

私は2つのモデルを外部キーでリンクしています。 runConfigのrunConfig ステータスDjango - リストビューのForeignKeyオブジェクトのIDを取得

class RunConfig(models.Model): 
    config_name = models.CharField(max_length=100) 

class RunConfigStatus(models.Model): 
    config_run_name  = models.CharField(max_length=200,unique=True) 
    config_name   = models.ForeignKey('RunConfig',on_delete=models.CASCADE,)   
    Overall_Status  = models.CharField(max_length=50,blank=True,null=True) 

私は現在RunConfigStatusためCBVリストビューを使用しています。外部キーオブジェクトをその詳細ビューにhref /リンクしたいと思います。これは可能ですか?

私のテンプレートに
class RunConfigStatusListView(LoginRequiredMixin,ListView): 
    model = RunConfigStatus 
    context_object_name = 'run_config_status_list' 

{% for run in run_config_status_list %} 

<td><a href={% url 'runconfigstatus-detail' pk=run.id %}>{{run.config_run_name}}</a></td> 

    <td>{{run.config_name}}</td>       
    <td>{{run.Overall_Status}}</td> 

私はCONFIG_NAMEはのrunConfigの詳細ビューにリダイレクトされますHREFを持っている必要があることを望ん

<td><a href={% url 'runconfig-detail' pk=**NOT SURE** %}>{{run.config_name}}</a></td> 

私の現在の出力のスクリーンショット、enter image description here

私はConfig Nameの値をクリックしたいと思います。その詳細ビュー。 (この場合、Test、MyFirstTest for all entries)

答えて

2

もちろん可能です。あなたは既にのrunConfig名にアクセスしている、あなたはPKとまったく同じことを行うことができます。

<a href="{% url 'runconfig-detail' pk=run.config_name.id %}"> 

は、しかし、あなたが本当に外部キーのためのより少ない混乱名前を選ぶ必要があります。フィールドconfig_nameは名前を指さず、RunConfigインスタンスを指しています。

+0

ありがとう@ダニエル、これは私のために働いた。 あなたは正しく私は別の名前を使用する必要があります、この名前は実際にconfig_nameがインスタンスであることを忘れてしまった。 – just10minutes

関連する問題