Hi Andréas,
I have now applied your second approach and now the field names get
translated into Chinese as expected...
Thanks so much.
On Friday, October 30, 2015 at 6:12:21 PM UTC+8, Andréas Kühne wrote:
>
> Hi,
>
> The problem is that you are redifining the fields, the fields then don't
> get any labels (because you haven't specified them). You can achieve what
> you want in two ways:
>
> Either add the following to your modelform:
> start_time = forms.DateTimeField(label=_("start time"),
> widget=SplitDateTimeWidget)
> end_time = forms.DateTimeField(label=_("end time"),
> widget=SplitDateTimeWidget)
>
> But I would much rather remove the start_time / end_time definitions in
> your model form and instead add this under the "class Meta:" heading:
> widgets = {
> 'start_time': SplitDateTimeWidget,
> 'end_time': SplitDateTimeWidget,
> }
>
> That way you don't have to add the labels once more, but just use them
> from the model instead.
>
> Regards,
>
> Andréas
>
> 2015-10-30 7:21 GMT+01:00 Sean Xu <[email protected] <javascript:>>:
>
>> Hi,
>>
>> I was learning Django Translation using django-swingtime as project with
>> Django 1.7.9 installed.
>> And I found out when Non-default widgets was originally specified for
>> form fields, the preferred language did not show up from my Firefox browser.
>> The problem has gone when these widgets were removed.
>> I'm not sure if this is a bug of Django or was there anything I did wrong.
>>
>> Note: po and mo file can be created correctly with or without the widgets
>> in place.
>>
>> You can find the Model definition from below:
>> class Occurrence(models.Model):
>> '''
>> Represents the start end time for a specific occurrence of a master
>> ``Event``
>> object.
>> '''
>> start_time = models.DateTimeField(_('start time'))
>> end_time = models.DateTimeField(_('end time'))
>> event = models.ForeignKey(Event, verbose_name=_('event'), editable=
>> False)
>> notes = GenericRelation(Note, verbose_name=_('notes'))
>>
>>
>> objects = OccurrenceManager()
>>
>>
>>
>> #===========================================================================
>> class Meta:
>> verbose_name = _('occurrence')
>> verbose_name_plural = _('occurrences')
>> ordering = ('start_time', 'end_time')
>>
>>
>> And the ModelForm is defined as follows:
>> class SingleOccurrenceForm(forms.ModelForm):
>> '''
>> A simple form for adding and updating single Occurrence attributes
>>
>>
>> '''
>>
>>
>> start_time = forms.DateTimeField(widget=SplitDateTimeWidget)
>> end_time = forms.DateTimeField(widget=SplitDateTimeWidget)
>> # Translation works if these 2 lines get removed
>>
>>
>>
>> #===========================================================================
>> class Meta:
>> model = Occurrence
>> if FIELDS_REQUIRED:
>> fields = "__all__"
>>
>>
>> Br
>> Sean
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Django users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected]
>> <javascript:>.
>> Visit this group at http://groups.google.com/group/django-users.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/django-users/52a50110-4c9d-4f71-9ebf-6ade058fa47e%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/django-users/52a50110-4c9d-4f71-9ebf-6ade058fa47e%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/d350c903-7285-4932-8c9f-0c5c1a4407f4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.