Perché la funzionalità di confronto è collegata all'ID visitatore (registro)?


16

La prima cosa che faccio all'avvio di un progetto è chiedere al cliente se ha bisogno dei log degli utenti nel suo sito web. In termini tecnici Mage_Logmodulo. In tutti i casi finora ho avuto la risposta:

No. Useremo Google Analytics.

E la domanda successiva è "Vuoi confrontare i prodotti?". Faccio queste domande perché le tabelle dei registri tendono a diventare straordinarie e il sito Web diventa lento. Quindi voglio evitare di risolvere i problemi di velocità.

La seconda domanda che faccio è perché la sezione di confronto dei prodotti dipende dai registri per i clienti ospiti. Vedi questo nel addActioncontroller di confronto del prodotto:

 if ($productId
        && (Mage::getSingleton('log/visitor')->getId() || Mage::getSingleton('customer/session')->isLoggedIn())
    )

Quindi se il cliente desidera confrontare i prodotti non posso disabilitare la registrazione.
Voglio dire, potrei cercare un'estensione o crearne una, ma la vera domanda è: perché la funzionalità di confronto è collegata all'ID visitatore? Qualche buon risultato di questo ?. Le citazioni degli ospiti funzionano bene facendo riferimento all'ID della citazione nella sessione. Perché non lo stesso per confrontare i prodotti?


Probabilmente perché nessuno disabiliterebbe nessuna parte di Magento, ogni progetto usa ogni parte in modo corretto;)
David Manners

Finché qualcuno ha implementato la possibilità di disabilitare un modulo principale, non penso che questo sia il motivo ... ma ho la battuta :).
Marius

D'accordo, anche se ho visto altre parti che non suonano bene dopo aver disabilitato alcune estensioni. In breve, è per questo che non capisco perché la gente ama il compositore e Magento mi fa sembrare strano perché non puoi dividere in modo affidabile i moduli principali.
David Manners,

@DavidManners. Spero che questo sarà possibile in qualche modo su 2.0.
Marius

quindi tornando alla domanda cosa succederebbe se disabilitassi il modulo ma poi configurassi il tuo modulo con la configurazione per log/visitorlavorare con le informazioni sulla sessione? Non l'ho mai provato da solo
David Manners,

Risposte:


7

Allo stato attuale direi che questa domanda è in qualche modo senza risposta - il motivo per cui utilizza le tabelle di registro è perché lo fa. Non credo davvero che ci fosse molta altra logica oltre a dire che Mage_Log era presente da 0.6B e che i primi sforzi potrebbero essere stati per agganciarvi la funzionalità iniziale; dopo qualche tempo i limiti probabilmente sono emersi e hanno smesso di svilupparsi su quell'idea.

A qualcuno come Boris può davvero rispondere completamente, ma sono abbastanza sicuro che la risposta a "perché l'hai fatto in quel modo" sarà "perché l'abbiamo fatto in quel modo".


1
Una risposta "perché l'abbiamo fatta in questo modo" è meglio di una risposta "perché hai te". Immagino tu abbia ragione, questo è senza risposta. Speravo in una risposta chiave per gli sviluppatori. Accetterò questa risposta principalmente perché qualcuno ha capito che è sbagliato e ha deciso di cambiarlo in Magento2. github.com/magento/magento2/issues/536
Marius

Hai ragione. Mancanza originale di esperienza con conseguenze sulla modularità nelle prime fasi di sviluppo e, soprattutto, mancanza di tempo per rivisitare e riscrivere il codice esistente che già "funziona"
Unirgy
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.