forked from openlp/openlp
The author_type column is part of the primary key and thus can't be NULL
This commit is contained in:
parent
87051a094a
commit
c7358e4a9f
@ -214,12 +214,6 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog, RegistryProperties):
|
|||||||
critical_error_message_box(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm', 'You need to type in at least one verse.'))
|
message=translate('SongsPlugin.EditSongForm', 'You need to type in at least one verse.'))
|
||||||
return False
|
return False
|
||||||
if self.authors_list_view.count() == 0:
|
|
||||||
self.song_tab_widget.setCurrentIndex(1)
|
|
||||||
self.authors_list_view.setFocus()
|
|
||||||
critical_error_message_box(
|
|
||||||
message=translate('SongsPlugin.EditSongForm', 'You need to have an author for this song.'))
|
|
||||||
return False
|
|
||||||
if self.verse_order_edit.text():
|
if self.verse_order_edit.text():
|
||||||
result = self._validate_verse_list(self.verse_order_edit.text(), self.verse_list_widget.rowCount())
|
result = self._validate_verse_list(self.verse_order_edit.text(), self.verse_list_widget.rowCount())
|
||||||
if not result:
|
if not result:
|
||||||
|
@ -35,7 +35,7 @@ import re
|
|||||||
|
|
||||||
from sqlalchemy import Column, ForeignKey, Table, types
|
from sqlalchemy import Column, ForeignKey, Table, types
|
||||||
from sqlalchemy.orm import mapper, relation, reconstructor
|
from sqlalchemy.orm import mapper, relation, reconstructor
|
||||||
from sqlalchemy.sql.expression import func
|
from sqlalchemy.sql.expression import func, text
|
||||||
|
|
||||||
from openlp.core.lib.db import BaseModel, init_db
|
from openlp.core.lib.db import BaseModel, init_db
|
||||||
from openlp.core.utils import get_natural_key
|
from openlp.core.utils import get_natural_key
|
||||||
@ -259,7 +259,7 @@ def init_schema(url):
|
|||||||
'authors_songs', metadata,
|
'authors_songs', metadata,
|
||||||
Column('author_id', types.Integer(), ForeignKey('authors.id'), primary_key=True),
|
Column('author_id', types.Integer(), ForeignKey('authors.id'), primary_key=True),
|
||||||
Column('song_id', types.Integer(), ForeignKey('songs.id'), primary_key=True),
|
Column('song_id', types.Integer(), ForeignKey('songs.id'), primary_key=True),
|
||||||
Column('author_type', types.String(), primary_key=True)
|
Column('author_type', types.String(), primary_key=True, nullable=False, server_default=text('""'))
|
||||||
)
|
)
|
||||||
|
|
||||||
# Definition of the "songs_topics" table
|
# Definition of the "songs_topics" table
|
||||||
|
@ -234,8 +234,8 @@ class SongMediaItem(MediaManagerItem):
|
|||||||
if song.temporary:
|
if song.temporary:
|
||||||
continue
|
continue
|
||||||
author_list = [author.display_name for author in song.authors]
|
author_list = [author.display_name for author in song.authors]
|
||||||
song_title = str(song.title)
|
song_detail = '%s (%s)' % (song.title, create_separated_list(author_list)) if author_list\
|
||||||
song_detail = '%s (%s)' % (song_title, create_separated_list(author_list))
|
else '%s'%song.title
|
||||||
song_name = QtGui.QListWidgetItem(song_detail)
|
song_name = QtGui.QListWidgetItem(song_detail)
|
||||||
song_name.setData(QtCore.Qt.UserRole, song.id)
|
song_name.setData(QtCore.Qt.UserRole, song.id)
|
||||||
self.list_view.addItem(song_name)
|
self.list_view.addItem(song_name)
|
||||||
|
@ -102,7 +102,8 @@ def upgrade_4(session, metadata):
|
|||||||
"""
|
"""
|
||||||
Version 4 upgrade.
|
Version 4 upgrade.
|
||||||
|
|
||||||
This upgrade adds a column for author type to the authors table
|
This upgrade adds a column for author type to the authors_songs table
|
||||||
"""
|
"""
|
||||||
op = get_upgrade_op(session)
|
op = get_upgrade_op(session)
|
||||||
op.add_column('authors_songs', Column('author_type', types.String(), primary_key=True, server_default=null()))
|
op.add_column('authors_songs', Column('author_type', types.String(), primary_key=True,
|
||||||
|
nullable=False, server_default=text('""')))
|
||||||
|
Loading…
Reference in New Issue
Block a user