- User model: sky_birth_dt/lat/lon/place/house_system/chart_data fields (lyric migration 0018) - Applet seed: my-sky (6×6, dashboard context) via applets migration 0009 - dashboard/sky/ — full monoapplet page: natus form + D3 wheel, LS key scoped to dashboard:sky; saves to User model - dashboard/sky/preview/ — PySwiss proxy (same logic as epic:natus_preview, no seat check) - dashboard/sky/save/ — persists 6 sky fields to User via update_fields - _applet-my-sky.html: tile with h2 link to /dashboard/sky/ - 2 FTs (applet→link→form, localStorage persistence) + 12 ITs — all green Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
560 B
Python
25 lines
560 B
Python
from django.db import migrations
|
|
|
|
|
|
def seed_my_sky_applet(apps, schema_editor):
|
|
Applet = apps.get_model('applets', 'Applet')
|
|
Applet.objects.get_or_create(
|
|
slug='my-sky',
|
|
defaults={
|
|
'name': 'My Sky',
|
|
'grid_cols': 6,
|
|
'grid_rows': 6,
|
|
'context': 'dashboard',
|
|
},
|
|
)
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
dependencies = [
|
|
('applets', '0008_game_kit_applets'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.RunPython(seed_my_sky_applet, migrations.RunPython.noop)
|
|
]
|