set the DefaultDBType as the default database option in the Installer and Add Site UI
This commit is contained in:
parent
aa5aca3a8e
commit
8f944e29ac
|
@ -31,7 +31,14 @@
|
|||
{
|
||||
foreach (var database in _databases)
|
||||
{
|
||||
<option value="@database.Name">@Localizer[@database.Name]</option>
|
||||
if (database.IsDefault)
|
||||
{
|
||||
<option value="@database.Name" selected>@Localizer[@database.Name]</option>
|
||||
}
|
||||
else
|
||||
{
|
||||
<option value="@database.Name">@Localizer[@database.Name]</option>
|
||||
}
|
||||
}
|
||||
}
|
||||
</select>
|
||||
|
|
|
@ -130,7 +130,14 @@ else
|
|||
<select id="databaseType" class="custom-select" value="@_databaseName" @onchange="(e => DatabaseChanged(e))">
|
||||
@foreach (var database in _databases)
|
||||
{
|
||||
<option value="@database.Name">@Localizer[@database.Name]</option>
|
||||
if (database.IsDefault)
|
||||
{
|
||||
<option value="@database.Name" selected>@Localizer[@database.Name]</option>
|
||||
}
|
||||
else
|
||||
{
|
||||
<option value="@database.Name">@Localizer[@database.Name]</option>
|
||||
}
|
||||
}
|
||||
</select>
|
||||
</td>
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
using System.Collections.Generic;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.Extensions.Options;
|
||||
using Oqtane.Infrastructure;
|
||||
using Oqtane.Models;
|
||||
using Oqtane.Shared;
|
||||
|
||||
|
@ -10,17 +11,25 @@ namespace Oqtane.Controllers
|
|||
public class DatabaseController : Controller
|
||||
{
|
||||
private IOptions<List<Database>> _databaseOptions;
|
||||
private IConfigManager _config;
|
||||
|
||||
public DatabaseController(IOptions<List<Database>> databaseOptions)
|
||||
public DatabaseController(IOptions<List<Database>> databaseOptions, IConfigManager config)
|
||||
{
|
||||
_databaseOptions = databaseOptions;
|
||||
_config = config;
|
||||
}
|
||||
|
||||
// GET: api/<controller>
|
||||
[HttpGet]
|
||||
public IEnumerable<Models.Database> Get()
|
||||
public IEnumerable<Database> Get()
|
||||
{
|
||||
return _databaseOptions.Value;
|
||||
var databases = _databaseOptions.Value;
|
||||
var master = _config.GetSetting(SettingKeys.DatabaseSection, SettingKeys.DatabaseTypeKey, "");
|
||||
if (master != "" && databases.Exists(item => item.DBType == master))
|
||||
{
|
||||
databases.Find(item => item.DBType == master).IsDefault = true;
|
||||
}
|
||||
return databases;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,5 +19,10 @@ namespace Oqtane.Models
|
|||
/// Type of DB using the full namespace, like `Oqtane.Database.SqlServer.SqlServerDatabase, Oqtane.Database.SqlServer`
|
||||
/// </summary>
|
||||
public string DBType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// whether this item is the default database provider ( ie. specified by DefaultDBType in appsettings.json )
|
||||
/// </summary>
|
||||
public bool IsDefault { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user