Hi,

I've been looking and searching for the last days to find out how i
could fix that, but I don't get around. I did read the newforms-admin
fieldset.py stuff, also the edit_inline_stacked.html template, but I
still don't figure it out.

What i would like to do is, to have 2 Models within one form.

The model is:
#----------------------------------------------------------------------------------------------------------------------------
class Album(models.Model):
    artist = models.ForeignKey(PortalUser)
    title = models.CharField(max_length=100)
    slug = models.SlugField(prepopulate_from=("artist", "title"))
    genre = models.ManyToManyField(Genre,
filter_interface=models.HORIZONTAL)
    def __unicode__(self):
        return self.title

    class Admin:
        list_display   = ('title', 'rating_stars', 'artist',
'release_date')
        list_filter    = ('label', 'release_date')
        ordering       = ('-release_date',)
        search_fields  = ('title', 'label')
        fields = (
                  (None, {'fields':('title',)}),
                  ('Album informatin', {'fields':('cover', 'language',
'release_date', 'genre')}),
        )

class Track(models.Model):
    artist = models.ForeignKey(PortalUser)
    title = models.CharField(max_length=100, core=True)
    file = models.FileField(upload_to="/", core=True)
    album = models.ForeignKey(Album, edit_inline=models.TABULAR,
num_extra_on_change=1, num_in_admin=10)

    def __unicode__(self):
        return self.title

    class Admin:
        list_display = ('title', 'album', 'artist')
        search_fields = ('title', 'genre', 'artist')
        list_filter = ('language',)
#----------------------------------------------------------------------------------------------------------------------------

and I use the following form:
class AlbumForm(forms.ModelForm):

    class Meta:
        model = Album

with this view:
login_required
def add_or_edit_album(request, success_url='',
                 form_class=AlbumForm,
                 template_name='music/album_form.html'):

    success_url = '/artist/%s' % (request.user.username)

    if request.method == 'POST':

        form = form_class(data=request.DATA, files=request.FILES)
        if form.is_valid():
            album = form.save(commit=False)
            album.artist = request.user
            album.save()
            form.save_m2m()
        return HttpResponseRedirect(success_url)
    else:
        form = form_class()
    return render_to_response(template_name,
                              { 'form': form },
 
context_instance=RequestContext(request))

what happens, when I call the template is, that only the album form
shows up, but it does not contain the track slots. When I try to call
the TrackForm (created the same way as the Album Form) I do get a drop-
down box for the albums. Does someone know a way how to solve this?

I use the current svn version from django.

Many thanks!

Tom
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to