mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-22 13:42:12 -03:00
Optimize LoRA cache sorting with flexible resort method
- Add optional name-only sorting to LoRA cache resort method - Update API routes to use new resort method with name-only flag - Refactor HTML template to improve script placement and initialization check
This commit is contained in:
@@ -368,7 +368,7 @@ class ApiRoutes:
|
||||
logger.error(f"Error fetching CivitAI data for {lora['file_path']}: {e}")
|
||||
|
||||
if needs_resort:
|
||||
cache.sorted_by_name = sorted(cache.raw_data, key=itemgetter('model_name'))
|
||||
await cache.resort(name_only=True)
|
||||
|
||||
# 发送完成消息
|
||||
await ws_manager.broadcast({
|
||||
|
||||
@@ -14,18 +14,19 @@ class LoraCache:
|
||||
def __post_init__(self):
|
||||
self._lock = asyncio.Lock()
|
||||
|
||||
async def resort(self):
|
||||
async def resort(self, name_only: bool = False):
|
||||
"""Resort all cached data views"""
|
||||
async with self._lock:
|
||||
self.sorted_by_name = sorted(
|
||||
self.raw_data,
|
||||
key=lambda x: x['model_name'].lower() # Case-insensitive sort
|
||||
)
|
||||
self.sorted_by_date = sorted(
|
||||
self.raw_data,
|
||||
key=itemgetter('modified'),
|
||||
reverse=True
|
||||
)
|
||||
if not name_only:
|
||||
self.sorted_by_date = sorted(
|
||||
self.raw_data,
|
||||
key=itemgetter('modified'),
|
||||
reverse=True
|
||||
)
|
||||
# Update folder list
|
||||
self.folders = sorted(list(set(
|
||||
l['folder'] for l in self.raw_data
|
||||
|
||||
@@ -60,9 +60,9 @@
|
||||
</div>
|
||||
|
||||
<script type="module" src="/loras_static/js/main.js"></script>
|
||||
{% if is_initializing %}
|
||||
<script>
|
||||
// 检查初始化状态并设置自动刷新
|
||||
{% if is_initializing %}
|
||||
async function checkInitStatus() {
|
||||
try {
|
||||
const response = await fetch('/api/loras?page=1&page_size=1');
|
||||
@@ -81,7 +81,7 @@
|
||||
|
||||
// 启动状态检查
|
||||
checkInitStatus();
|
||||
{% endif %}
|
||||
</script>
|
||||
{% endif %}
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user