2017-03-01 2 views
0

にオブジェクトの配列を渡す:私は、HTML形式のいくつかの入力の一部であったオブジェクトのPythonのリストを表示しようとしているJavaScriptの

私のinputタグはこのようなものになるだろう
$('input[name=my_array]').serializeObject() 

<input type="hidden" name="my_array" value="{{ my_array_of_objects }}"> 

しかし、私はちょうどこのようなものになっています。だから私は、このオブジェのいずれかのプロパティにアクセスすることはできません

[<object_type: an_object object>] 

をct。これを参照しているものを私が見ることができる場所に変換する方法はありますか?私は以前のインスタンスでそれらを反復することができて、そして私のHTMLファイル内にそのプロパティにアクセスしました:

{% for o in my_array_of_objects %} 
    <li> o.id, o.first_name, o.last_name </li> 
{% endfor %} 

だから私はJavaScriptでこのオブジェクトにアクセスすることができ、同様の方法がありますか?申し訳ありませんが、これは質問のnoobです。

編集:ここに私が渡そうとしているもののサンプルがあります。 、

class my_object(models.Model): 

    study_id = models.CharField(max_length = 30, blank = True) 
    g1 = models.ForeignKey(G1) 
    g2 = models.ForeignKey(G2) 

    title = models.IntegerField(choices = TITLE_CHOICES) 
    family = models.IntegerField(choices = FAMILY_CHOICES) 

を、私はいくつかのページをレンダリングするとき、私は私が必要とするこれらのオブジェクトのリストを作成します。私はそうのようなPythonのクラスの下で、私のオブジェクトがSQLDBに格納されているDjangoの残りのフレームワークを、使用していますちょうどそれをmy_list_of_objectsと呼ぶことにしましょう。だから、HTML形式で、私は入力があります。

<input type="hidden" name="my_list" value="{{ my_list_of_objects }}"> 

を、私は私が私のフォームを送信した後にはJavaScript側でこの値を参照しようとすると、私が得るすべては

my_list_of_objects =[<my_object: my_object object>, <my_object: my_object object>, ...] 

答えて

0
のリストです

JSON.serialize(my_array_of_objects)を試してください

+0

? JavaScriptで? –

+0

私は両方を試しましたが、どちらもうまくいきませんでした –

1

そのオブジェクトをJSONオブジェクトに変換してアクセスすることはできません。

JSON.parse($('input[name=my_array]').val()); 

私はまだ、どのようにオブジェクトのリストを作成しませんでした。 (私が多くのPythonについて知りません)

ところで、私はあなたのPythonオブジェクトリストをサーバーページのJSONオブジェクトに変換することをお勧めします。

json.dumps(c.__dict__) 

私はhereからそのラインを得ました。次に、あなたのJavaスクリプトにJSON.parseを使用することができます。

+0

値はまだ '[]'として現れます –

+0

入力値のサンプルデータを入れてください。 – Geeganage

+0

私は編集でそれを追加しました、うまくいけば、これは少し良く説明します –

関連する問題