/
28019793.ru.001.xlf
74 lines (74 loc) · 18.8 KB
/
28019793.ru.001.xlf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" version="1.2">
<file source-language="en" target-language="ru" datatype="htmlbody" original="https://stackoverflow.com/questions/28019793">
<body>
<group id="28019793">
<trans-unit id="741696a0187adf8adc0a4d06661e7b70c77f6b35" translate="yes" xml:space="preserve">
<source><strong>Option 1</strong></source>
<target state="translated"><strong><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Опция 1</font></font></strong></target>
</trans-unit>
<trans-unit id="ca4d34866b332b809e4e886d87a9ac3d746b8c72" translate="yes" xml:space="preserve">
<source><strong>Option 2</strong></source>
<target state="translated"><strong><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Вариант 2</font></font></strong></target>
</trans-unit>
<trans-unit id="e51e90b5126945cd61e1eca1bedee2edc834cb6f" translate="yes" xml:space="preserve">
<source>And of course you need to change you POST method to accept a collection</source>
<target state="translated">И,конечно же,вам нужно изменить метод POST,чтобы принять коллекцию.</target>
</trans-unit>
<trans-unit id="fbe5e11d274f9c2ae5927c07c3f14f217892fc63" translate="yes" xml:space="preserve">
<source>Finally, if you are using client side validation (jquery-validate-unobtrusive.js), then you need re-parse the validator each time you add new elements to the DOM as explained in <a href="https://stackoverflow.com/questions/26542509/validate-dynamically-added-fields/26542591#26542591">this answer</a>.</source>
<target state="translated"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Наконец, если вы используете проверку на стороне клиента (jquery-validate-unobtrusive.js), то вам необходимо повторно анализировать валидатор каждый раз, когда вы добавляете новые элементы в DOM, как объяснено в </font></font><a href="https://stackoverflow.com/questions/26542509/validate-dynamically-added-fields/26542591#26542591"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">этом ответе</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> .</font></font></target>
</trans-unit>
<trans-unit id="088c110b368d18b2d34b522ade404d9539b0234d" translate="yes" xml:space="preserve">
<source>I have added a button in my view. When this button is clicked partial view is added. In my form I can add as much partial view as I can. When Submitting this form data I am unable to send all the partial view data to controller.
I have made a different model having all the attributes and I have made a list of that model to my main model. Can anyone please give me some trick so that I can send all the partial view content to my controller?</source>
<target state="translated">Я добавил кнопку на мой взгляд.При нажатии на эту кнопку добавляется частичный вид.В моей форме я могу добавить как можно больше частичного вида.При отправке данных этой формы я не могу отправить все данные частичного вида контроллеру.Я создал другую модель,имеющую все атрибуты,и составил список этой модели для своей основной модели.Может ли кто-нибудь,пожалуйста,дать мне какой-нибудь трюк,чтобы я мог отправить все данные частичного вида на контроллер?</target>
</trans-unit>
<trans-unit id="97808654d59cf0170d91d6f04a935041a4f580f5" translate="yes" xml:space="preserve">
<source>In My View</source>
<target state="translated">На мой взгляд</target>
</trans-unit>
<trans-unit id="82d8b7cd59f1d6fa60801b3a80c899a731545bee" translate="yes" xml:space="preserve">
<source>In My controller</source>
<target state="translated">В моем контроллере</target>
</trans-unit>
<trans-unit id="074ea2f226ffd197ba3adc8f472a539ca8b0c3dd" translate="yes" xml:space="preserve">
<source>In my Partial View</source>
<target state="translated">В моем частичном представлении</target>
</trans-unit>
<trans-unit id="c61a4d2e8a4e61b36b5c0b620e225dcba8bbd48c" translate="yes" xml:space="preserve">
<source>Manually create the html elements representing a new object with a 'fake' indexer, place them in a hidden container, then in the Add button event, clone the html, update the indexers and Index value and append the cloned elements to the DOM. To make sure the html is correct, create one default object in a <code>for</code> loop and inspect the html it generates. An example of this approach is shown in <a href="https://stackoverflow.com/questions/24026374/adding-another-pet-to-a-model-form/24027152#24027152">this answer</a></source>
<target state="translated"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Вручную создайте элементы html, представляющие новый объект с помощью &laquo;поддельного&raquo; индексатора, поместите их в скрытый контейнер, затем в событии кнопки &laquo;Добавить&raquo;, клонируйте HTML, обновите индексаторы и значение индекса и добавьте клонированные элементы в DOM. </font><font style="vertical-align: inherit;">Чтобы убедиться, что html верен, создайте один объект по умолчанию в </font><font style="vertical-align: inherit;">цикле </font></font> <code>for</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> и проверьте html, который он генерирует. </font><font style="vertical-align: inherit;">Пример такого подхода показан в </font></font><a href="https://stackoverflow.com/questions/24026374/adding-another-pet-to-a-model-form/24027152#24027152"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">этом ответе</font></font></a></target>
</trans-unit>
<trans-unit id="525f85f59477d960091da961eea7cf7e73b408a9" translate="yes" xml:space="preserve">
<source>Note the use of a 'fake' indexer to prevent this one being bound on post back ('#' and '%' wont match up so they are ignored by the <code>DefaultModelBinder</code>)</source>
<target state="translated"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Обратите внимание на использование &laquo;фальшивого&raquo; индексатора для предотвращения его привязки к обратной записи (&laquo;#&raquo; и &laquo;%&raquo; не совпадают, поэтому </font></font> <code>DefaultModelBinder</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> их игнорирует </font><font style="vertical-align: inherit;">)</font></font></target>
</trans-unit>
<trans-unit id="4899489161c1634c59437b8a1953a0b514b7626b" translate="yes" xml:space="preserve">
<source>Submit same Partial View called multiple times data to controller</source>
<target state="translated">Отправьте один и тот же частичный просмотр,вызванный многократными данными в контроллер.</target>
</trans-unit>
<trans-unit id="e6f86bd527d5073d60eb5db916ed8a87d5e0ea62" translate="yes" xml:space="preserve">
<source>The <code>DefaultModelBinder</code> required that the indexer for collection items start at zero and be consecutive, or that the form values include a <code>Index=someValue</code> where the indexer is <code>someValue</code> (for example <code>&lt;input name="[ABC].productTotalQuantity" ..&gt;&lt;input name="Index" value="ABC"&gt;</code>. This is explained in detail in Phil Haack's article <a href="http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx/">Model Binding To A List</a>. Using the Index approach is generally better because it also allows you to delete items from the list (otherwise it would be necessary to rename all existing controls so the indexer is consecutive).</source>
<target state="translated"><font style="vertical-align: inherit;"></font> <code>DefaultModelBinder</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> требуется, чтобы индексатор для элементов коллекции начинаются с нуля и быть последовательными, или что значения формы включают в </font><font style="vertical-align: inherit;">себя </font></font> <code>Index=someValue</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> , где индексатор </font></font> <code>someValue</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> (например , </font></font> <code>&lt;input name="[ABC].productTotalQuantity" ..&gt;&lt;input name="Index" value="ABC"&gt;</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> . Это подробно объясняется в статье Фила Хаака &laquo; </font></font><a href="http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx/"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Привязка модели к списку&raquo;</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> . Использование подхода &laquo;Индекс&raquo;, как правило, лучше, поскольку позволяет также удалять элементы из списка (в противном случае это будет необходимо переименовать все существующие элементы управления, чтобы индексатор работал последовательно).</font></font></target>
</trans-unit>
<trans-unit id="44d626131859a667b3e17d6f9d4b9931609778bf" translate="yes" xml:space="preserve">
<source>The advantage of option 1 is that you are strongly typing the view to your model, but it means making a call to the server each time you add a new item. The advantage of option 2 is that its all done client side, but if you make any changes to you model (e.g. add a validation attribute to a property) then you also need to manually update the html, making maintenance a bit harder.</source>
<target state="translated">Преимущество варианта 1 заключается в том,что вы сильно набираете вид для вашей модели,но это означает звонок на сервер каждый раз,когда вы добавляете новый элемент.Преимущество варианта 2 заключается в том,что все это делается на клиентской стороне,но если вы вносите какие-либо изменения в свою модель (например,добавляете атрибут валидации в свойство),то вам также необходимо вручную обновить html,что немного усложняет обслуживание.</target>
</trans-unit>
<trans-unit id="015142018ace531708c2bab99fe13b0276603555" translate="yes" xml:space="preserve">
<source>Two possible approaches to your issue.</source>
<target state="translated">Два возможных подхода к вашему вопросу.</target>
</trans-unit>
<trans-unit id="cc7eb29cbe0dd818e924a84eaf82e815f0940a6d" translate="yes" xml:space="preserve">
<source>Use the <a href="https://github.com/danludwig/BeginCollectionItem">BeginItemCollection</a> helper for your partial view. This helper will render a hidden input for the <code>Index</code> value based on a GUID. You need this in both the partial view and the loop where you render existing items. Your partial would look something like</source>
<target state="translated"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Используйте </font><font style="vertical-align: inherit;">помощник </font></font><a href="https://github.com/danludwig/BeginCollectionItem"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">BeginItemCollection</font></font></a><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> для частичного просмотра. </font><font style="vertical-align: inherit;">Этот помощник будет отображать скрытый ввод для </font><font style="vertical-align: inherit;">значения </font></font> <code>Index</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> на основе GUID. </font><font style="vertical-align: inherit;">Это необходимо как в частичном представлении, так и в цикле, в котором вы визуализируете существующие элементы. </font><font style="vertical-align: inherit;">Ваш частичный будет выглядеть примерно так</font></font></target>
</trans-unit>
<trans-unit id="fb703472f4015d9b3e23aeb33d2560200f854115" translate="yes" xml:space="preserve">
<source>Your problem is that the partial renders html based on a single <code>AdminProductDetailModel</code> object, yet you are trying to post back a collection. When you dynamically add a new object you continue to add duplicate controls that look like <code>&lt;input name="productTotalQuantity" ..&gt;</code> (this is also creating invalid html because of the duplicate <code>id</code> attributes) where as they need to be <code>&lt;input name="[0].productTotalQuantity" ..&gt;</code>, <code>&lt;input name="[1].productTotalQuantity" ..&gt;</code> etc. in order to bind to a collection on post back.</source>
<target state="translated"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">Ваша проблема заключается в том, что частичное </font></font> <code>AdminProductDetailModel</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> html основано на одном </font><font style="vertical-align: inherit;">объекте </font><font style="vertical-align: inherit;">AdminProductDetailModel</font><font style="vertical-align: inherit;"> , но вы пытаетесь отправить обратно коллекцию. Когда вы динамически добавляете новый объект, вы продолжаете добавлять дубликаты элементов управления, которые выглядят как </font></font> <code>&lt;input name="productTotalQuantity" ..&gt;</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> (это также создает недопустимый html из-за дублированных </font><font style="vertical-align: inherit;">атрибутов </font></font> <code>id</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> ), где они должны быть </font></font> <code>&lt;input name="[0].productTotalQuantity" ..&gt;</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> , </font></font> <code>&lt;input name="[1].productTotalQuantity" ..&gt;</code> <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> и т. Д., Чтобы связать коллекцию с обратной связью.</font></font></target>
</trans-unit>
</group>
</body>
</file>
</xliff>