2016-07-08 20 views
0

私はReduxフォームを初めて使用しています。特定のフローを設定する方法を理解する上で問題があります。だから私は新しいユーザーを作成するためのフォームを持っています。このフォームには、特定の組織にユーザーを追加するために管理者がクリックするボタンがあります(ユーザーモデルは組織の所属 - ユーザーの所属組織です)。ボタンをクリックすると、モーダルウィンドウがポップアップし、ユーザーは組織のリストを検索して特定の組織を選択することができます。管理者がモーダルで組織を選択した後、元の新しいユーザーフォームの無効なテキストフィールドに組織名を表示したいとします。私のジレンマを聞く。フォームが提出されたら、組織の名前ではなく、組織IDを提出したいと思います。Reduxフォーム - オブジェクトの送信ID

私はこれをいくつかの異なる方法で達成できることを知っていますが、他の人がこの問題を解決する最良のアプローチだと思っていましたか?組織がモーダルでクリックされると、selectedOrgIdの状態を変更してからフォームのサブミッションにその状態をcreateUserアクションに渡す必要がありますか?または、フォームに隠れた入力フィールドを含めて、値をthis.state.selectedOrgIdに等しく設定して、フォームIDを使用してorganizationIdを送信する必要がありますか?

完全に紛失しているReduxフォームでこれを達成する簡単な方法はありますか?

+1

あなたのコードを追加してもらえますでしょうか? –

答えて

1

あなたは組織名を提出するも気にしない場合は、それが閉じた後、無効な入力が"organization.name"のためにも持って前に、あなたはあなたのモーダル

dispatch(change('userForm', 'organization', { id: 7, name: 'Acme, Inc.' })) 

を持つことができます。そのコンセプトはdoesn't make sense in Redux Formなので、何も隠された入力は必要ありません。

あなたが深いオブジェクトへの嫌悪感を持っている場合、あなたは

dispatch(change('userForm', 'organizationId', 7)) 
dispatch(change('userForm', 'organizationName', 'Acme, Inc.')) 
関連する問題